{
  "type": "Program",
  "start": 0,
  "end": 15584,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 503,
      "column": 0
    }
  },
  "sourceType": "module",
  "body": [
    {
      "type": "ImportDeclaration",
      "start": 0,
      "end": 26,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 26
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 7,
          "end": 12,
          "loc": {
            "start": {
              "line": 1,
              "column": 7
            },
            "end": {
              "line": 1,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 7,
            "end": 12,
            "loc": {
              "start": {
                "line": 1,
                "column": 7
              },
              "end": {
                "line": 1,
                "column": 12
              }
            },
            "name": "THREE"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 18,
        "end": 25,
        "loc": {
          "start": {
            "line": 1,
            "column": 18
          },
          "end": {
            "line": 1,
            "column": 25
          }
        },
        "value": "three",
        "rawValue": "three",
        "raw": "'three'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 27,
      "end": 66,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 39
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 34,
          "end": 39,
          "loc": {
            "start": {
              "line": 2,
              "column": 7
            },
            "end": {
              "line": 2,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 34,
            "end": 39,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 12
              }
            },
            "name": "Tween"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 45,
        "end": 65,
        "loc": {
          "start": {
            "line": 2,
            "column": 18
          },
          "end": {
            "line": 2,
            "column": 38
          }
        },
        "value": "../animation/tween",
        "rawValue": "../animation/tween",
        "raw": "'../animation/tween'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 67,
      "end": 103,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 36
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 74,
          "end": 80,
          "loc": {
            "start": {
              "line": 3,
              "column": 7
            },
            "end": {
              "line": 3,
              "column": 13
            }
          },
          "local": {
            "type": "Identifier",
            "start": 74,
            "end": 80,
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 13
              }
            },
            "name": "Events"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 86,
        "end": 102,
        "loc": {
          "start": {
            "line": 3,
            "column": 19
          },
          "end": {
            "line": 3,
            "column": 35
          }
        },
        "value": "../core/events",
        "rawValue": "../core/events",
        "raw": "'../core/events'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 104,
      "end": 147,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 43
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 111,
          "end": 120,
          "loc": {
            "start": {
              "line": 4,
              "column": 7
            },
            "end": {
              "line": 4,
              "column": 16
            }
          },
          "local": {
            "type": "Identifier",
            "start": 111,
            "end": 120,
            "loc": {
              "start": {
                "line": 4,
                "column": 7
              },
              "end": {
                "line": 4,
                "column": 16
              }
            },
            "name": "Raycaster"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 126,
        "end": 146,
        "loc": {
          "start": {
            "line": 4,
            "column": 22
          },
          "end": {
            "line": 4,
            "column": 42
          }
        },
        "value": "../three/raycaster",
        "rawValue": "../three/raycaster",
        "raw": "'../three/raycaster'"
      }
    },
    {
      "type": "ExportDefaultDeclaration",
      "start": 149,
      "end": 359,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 12,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 164,
        "end": 359,
        "loc": {
          "start": {
            "line": 6,
            "column": 15
          },
          "end": {
            "line": 12,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 170,
          "end": 177,
          "loc": {
            "start": {
              "line": 6,
              "column": 21
            },
            "end": {
              "line": 6,
              "column": 28
            }
          },
          "name": "Object3"
        },
        "superClass": {
          "type": "MemberExpression",
          "start": 186,
          "end": 200,
          "loc": {
            "start": {
              "line": 6,
              "column": 37
            },
            "end": {
              "line": 6,
              "column": 51
            }
          },
          "object": {
            "type": "Identifier",
            "start": 186,
            "end": 191,
            "loc": {
              "start": {
                "line": 6,
                "column": 37
              },
              "end": {
                "line": 6,
                "column": 42
              }
            },
            "name": "THREE"
          },
          "property": {
            "type": "Identifier",
            "start": 192,
            "end": 200,
            "loc": {
              "start": {
                "line": 6,
                "column": 43
              },
              "end": {
                "line": 6,
                "column": 51
              }
            },
            "name": "Object3D"
          },
          "computed": false
        },
        "body": {
          "type": "ClassBody",
          "start": 201,
          "end": 359,
          "loc": {
            "start": {
              "line": 6,
              "column": 52
            },
            "end": {
              "line": 12,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 204,
              "end": 357,
              "loc": {
                "start": {
                  "line": 7,
                  "column": 1
                },
                "end": {
                  "line": 11,
                  "column": 2
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 204,
                "end": 215,
                "loc": {
                  "start": {
                    "line": 7,
                    "column": 1
                  },
                  "end": {
                    "line": 7,
                    "column": 12
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 215,
                "end": 357,
                "loc": {
                  "start": {
                    "line": 7,
                    "column": 12
                  },
                  "end": {
                    "line": 11,
                    "column": 2
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "AssignmentPattern",
                    "start": 216,
                    "end": 235,
                    "loc": {
                      "start": {
                        "line": 7,
                        "column": 13
                      },
                      "end": {
                        "line": 7,
                        "column": 32
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 216,
                      "end": 223,
                      "loc": {
                        "start": {
                          "line": 7,
                          "column": 13
                        },
                        "end": {
                          "line": 7,
                          "column": 20
                        }
                      },
                      "name": "objects"
                    },
                    "right": {
                      "type": "Identifier",
                      "start": 226,
                      "end": 235,
                      "loc": {
                        "start": {
                          "line": 7,
                          "column": 23
                        },
                        "end": {
                          "line": 7,
                          "column": 32
                        }
                      },
                      "name": "undefined"
                    }
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 237,
                    "end": 256,
                    "loc": {
                      "start": {
                        "line": 7,
                        "column": 34
                      },
                      "end": {
                        "line": 7,
                        "column": 53
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 237,
                      "end": 244,
                      "loc": {
                        "start": {
                          "line": 7,
                          "column": 34
                        },
                        "end": {
                          "line": 7,
                          "column": 41
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "Identifier",
                      "start": 247,
                      "end": 256,
                      "loc": {
                        "start": {
                          "line": 7,
                          "column": 44
                        },
                        "end": {
                          "line": 7,
                          "column": 53
                        }
                      },
                      "name": "undefined"
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 258,
                  "end": 357,
                  "loc": {
                    "start": {
                      "line": 7,
                      "column": 55
                    },
                    "end": {
                      "line": 11,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 262,
                      "end": 270,
                      "loc": {
                        "start": {
                          "line": 8,
                          "column": 2
                        },
                        "end": {
                          "line": 8,
                          "column": 10
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 262,
                        "end": 269,
                        "loc": {
                          "start": {
                            "line": 8,
                            "column": 2
                          },
                          "end": {
                            "line": 8,
                            "column": 9
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 262,
                          "end": 267,
                          "loc": {
                            "start": {
                              "line": 8,
                              "column": 2
                            },
                            "end": {
                              "line": 8,
                              "column": 7
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 279,
                      "end": 318,
                      "loc": {
                        "start": {
                          "line": 9,
                          "column": 8
                        },
                        "end": {
                          "line": 9,
                          "column": 47
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 283,
                        "end": 292,
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 12
                          },
                          "end": {
                            "line": 9,
                            "column": 21
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 284,
                          "end": 292,
                          "loc": {
                            "start": {
                              "line": 9,
                              "column": 13
                            },
                            "end": {
                              "line": 9,
                              "column": 21
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "Identifier",
                            "start": 285,
                            "end": 292,
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 14
                              },
                              "end": {
                                "line": 9,
                                "column": 21
                              }
                            },
                            "name": "options"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 294,
                        "end": 318,
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 23
                          },
                          "end": {
                            "line": 9,
                            "column": 47
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 294,
                          "end": 317,
                          "loc": {
                            "start": {
                              "line": 9,
                              "column": 23
                            },
                            "end": {
                              "line": 9,
                              "column": 46
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 294,
                            "end": 308,
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 23
                              },
                              "end": {
                                "line": 9,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 294,
                              "end": 298,
                              "loc": {
                                "start": {
                                  "line": 9,
                                  "column": 23
                                },
                                "end": {
                                  "line": 9,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 299,
                              "end": 308,
                              "loc": {
                                "start": {
                                  "line": 9,
                                  "column": 28
                                },
                                "end": {
                                  "line": 9,
                                  "column": 37
                                }
                              },
                              "name": "setValues"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 309,
                              "end": 316,
                              "loc": {
                                "start": {
                                  "line": 9,
                                  "column": 38
                                },
                                "end": {
                                  "line": 9,
                                  "column": 45
                                }
                              },
                              "name": "options"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 321,
                      "end": 354,
                      "loc": {
                        "start": {
                          "line": 10,
                          "column": 2
                        },
                        "end": {
                          "line": 10,
                          "column": 35
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 325,
                        "end": 334,
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 6
                          },
                          "end": {
                            "line": 10,
                            "column": 15
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 326,
                          "end": 334,
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 7
                            },
                            "end": {
                              "line": 10,
                              "column": 15
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "Identifier",
                            "start": 327,
                            "end": 334,
                            "loc": {
                              "start": {
                                "line": 10,
                                "column": 8
                              },
                              "end": {
                                "line": 10,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 336,
                        "end": 354,
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 17
                          },
                          "end": {
                            "line": 10,
                            "column": 35
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 336,
                          "end": 353,
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 17
                            },
                            "end": {
                              "line": 10,
                              "column": 34
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 336,
                            "end": 344,
                            "loc": {
                              "start": {
                                "line": 10,
                                "column": 17
                              },
                              "end": {
                                "line": 10,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 336,
                              "end": 340,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 17
                                },
                                "end": {
                                  "line": 10,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 341,
                              "end": 344,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 22
                                },
                                "end": {
                                  "line": 10,
                                  "column": 25
                                }
                              },
                              "name": "add"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 345,
                              "end": 352,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 26
                                },
                                "end": {
                                  "line": 10,
                                  "column": 33
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [],
        "trailingComments": []
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 361,
      "end": 851,
      "loc": {
        "start": {
          "line": 14,
          "column": 0
        },
        "end": {
          "line": 34,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 361,
        "end": 851,
        "loc": {
          "start": {
            "line": 14,
            "column": 0
          },
          "end": {
            "line": 34,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 361,
          "end": 382,
          "loc": {
            "start": {
              "line": 14,
              "column": 0
            },
            "end": {
              "line": 14,
              "column": 21
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 361,
            "end": 375,
            "loc": {
              "start": {
                "line": 14,
                "column": 0
              },
              "end": {
                "line": 14,
                "column": 14
              }
            },
            "object": {
              "type": "Identifier",
              "start": 361,
              "end": 366,
              "loc": {
                "start": {
                  "line": 14,
                  "column": 0
                },
                "end": {
                  "line": 14,
                  "column": 5
                }
              },
              "name": "THREE"
            },
            "property": {
              "type": "Identifier",
              "start": 367,
              "end": 375,
              "loc": {
                "start": {
                  "line": 14,
                  "column": 6
                },
                "end": {
                  "line": 14,
                  "column": 14
                }
              },
              "name": "Object3D"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 376,
            "end": 382,
            "loc": {
              "start": {
                "line": 14,
                "column": 15
              },
              "end": {
                "line": 14,
                "column": 21
              }
            },
            "name": "Events"
          },
          "computed": false
        },
        "right": {
          "type": "ObjectExpression",
          "start": 385,
          "end": 851,
          "loc": {
            "start": {
              "line": 14,
              "column": 24
            },
            "end": {
              "line": 34,
              "column": 1
            }
          },
          "properties": [
            {
              "type": "Property",
              "start": 391,
              "end": 634,
              "loc": {
                "start": {
                  "line": 15,
                  "column": 4
                },
                "end": {
                  "line": 24,
                  "column": 5
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 391,
                "end": 400,
                "loc": {
                  "start": {
                    "line": 15,
                    "column": 4
                  },
                  "end": {
                    "line": 15,
                    "column": 13
                  }
                },
                "name": "Lifecycle"
              },
              "value": {
                "type": "ObjectExpression",
                "start": 402,
                "end": 634,
                "loc": {
                  "start": {
                    "line": 15,
                    "column": 15
                  },
                  "end": {
                    "line": 24,
                    "column": 5
                  }
                },
                "properties": [
                  {
                    "type": "Property",
                    "start": 409,
                    "end": 425,
                    "loc": {
                      "start": {
                        "line": 16,
                        "column": 5
                      },
                      "end": {
                        "line": 16,
                        "column": 21
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 409,
                      "end": 415,
                      "loc": {
                        "start": {
                          "line": 16,
                          "column": 5
                        },
                        "end": {
                          "line": 16,
                          "column": 11
                        }
                      },
                      "name": "Loaded"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 417,
                      "end": 425,
                      "loc": {
                        "start": {
                          "line": 16,
                          "column": 13
                        },
                        "end": {
                          "line": 16,
                          "column": 21
                        }
                      },
                      "value": "Loaded",
                      "rawValue": "Loaded",
                      "raw": "'Loaded'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 432,
                    "end": 446,
                    "loc": {
                      "start": {
                        "line": 17,
                        "column": 5
                      },
                      "end": {
                        "line": 17,
                        "column": 19
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 432,
                      "end": 437,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 5
                        },
                        "end": {
                          "line": 17,
                          "column": 10
                        }
                      },
                      "name": "Added"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 439,
                      "end": 446,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 12
                        },
                        "end": {
                          "line": 17,
                          "column": 19
                        }
                      },
                      "value": "Added",
                      "rawValue": "Added",
                      "raw": "'Added'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 456,
                    "end": 478,
                    "loc": {
                      "start": {
                        "line": 18,
                        "column": 8
                      },
                      "end": {
                        "line": 18,
                        "column": 30
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 456,
                      "end": 465,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 8
                        },
                        "end": {
                          "line": 18,
                          "column": 17
                        }
                      },
                      "name": "ViewFound"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 467,
                      "end": 478,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 19
                        },
                        "end": {
                          "line": 18,
                          "column": 30
                        }
                      },
                      "value": "ViewFound",
                      "rawValue": "ViewFound",
                      "raw": "'ViewFound'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 485,
                    "end": 509,
                    "loc": {
                      "start": {
                        "line": 19,
                        "column": 5
                      },
                      "end": {
                        "line": 19,
                        "column": 29
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 485,
                      "end": 495,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 5
                        },
                        "end": {
                          "line": 19,
                          "column": 15
                        }
                      },
                      "name": "ChildAdded"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 497,
                      "end": 509,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 17
                        },
                        "end": {
                          "line": 19,
                          "column": 29
                        }
                      },
                      "value": "ChildAdded",
                      "rawValue": "ChildAdded",
                      "raw": "'ChildAdded'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 516,
                    "end": 534,
                    "loc": {
                      "start": {
                        "line": 20,
                        "column": 5
                      },
                      "end": {
                        "line": 20,
                        "column": 23
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 516,
                      "end": 523,
                      "loc": {
                        "start": {
                          "line": 20,
                          "column": 5
                        },
                        "end": {
                          "line": 20,
                          "column": 12
                        }
                      },
                      "name": "Removed"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 525,
                      "end": 534,
                      "loc": {
                        "start": {
                          "line": 20,
                          "column": 14
                        },
                        "end": {
                          "line": 20,
                          "column": 23
                        }
                      },
                      "value": "Removed",
                      "rawValue": "Removed",
                      "raw": "'Removed'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 541,
                    "end": 569,
                    "loc": {
                      "start": {
                        "line": 21,
                        "column": 5
                      },
                      "end": {
                        "line": 21,
                        "column": 33
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 541,
                      "end": 553,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 5
                        },
                        "end": {
                          "line": 21,
                          "column": 17
                        }
                      },
                      "name": "ChildRemoved"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 555,
                      "end": 569,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 19
                        },
                        "end": {
                          "line": 21,
                          "column": 33
                        }
                      },
                      "value": "ChildRemoved",
                      "rawValue": "ChildRemoved",
                      "raw": "'ChildRemoved'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 576,
                    "end": 598,
                    "loc": {
                      "start": {
                        "line": 22,
                        "column": 5
                      },
                      "end": {
                        "line": 22,
                        "column": 27
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 576,
                      "end": 585,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 5
                        },
                        "end": {
                          "line": 22,
                          "column": 14
                        }
                      },
                      "name": "Destroyed"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 587,
                      "end": 598,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 16
                        },
                        "end": {
                          "line": 22,
                          "column": 27
                        }
                      },
                      "value": "Destroyed",
                      "rawValue": "Destroyed",
                      "raw": "'Destroyed'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 608,
                    "end": 628,
                    "loc": {
                      "start": {
                        "line": 23,
                        "column": 8
                      },
                      "end": {
                        "line": 23,
                        "column": 28
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 608,
                      "end": 616,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 8
                        },
                        "end": {
                          "line": 23,
                          "column": 16
                        }
                      },
                      "name": "Rendered"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 618,
                      "end": 628,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 18
                        },
                        "end": {
                          "line": 23,
                          "column": 28
                        }
                      },
                      "value": "Rendered",
                      "rawValue": "Rendered",
                      "raw": "'Rendered'"
                    },
                    "kind": "init"
                  }
                ]
              },
              "kind": "init"
            },
            {
              "type": "Property",
              "start": 640,
              "end": 849,
              "loc": {
                "start": {
                  "line": 25,
                  "column": 4
                },
                "end": {
                  "line": 33,
                  "column": 5
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 640,
                "end": 651,
                "loc": {
                  "start": {
                    "line": 25,
                    "column": 4
                  },
                  "end": {
                    "line": 25,
                    "column": 15
                  }
                },
                "name": "Interaction"
              },
              "value": {
                "type": "ObjectExpression",
                "start": 653,
                "end": 849,
                "loc": {
                  "start": {
                    "line": 25,
                    "column": 17
                  },
                  "end": {
                    "line": 33,
                    "column": 5
                  }
                },
                "properties": [
                  {
                    "type": "Property",
                    "start": 663,
                    "end": 681,
                    "loc": {
                      "start": {
                        "line": 26,
                        "column": 8
                      },
                      "end": {
                        "line": 26,
                        "column": 26
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 663,
                      "end": 670,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 8
                        },
                        "end": {
                          "line": 26,
                          "column": 15
                        }
                      },
                      "name": "Clicked"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 672,
                      "end": 681,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 17
                        },
                        "end": {
                          "line": 26,
                          "column": 26
                        }
                      },
                      "value": "Clicked",
                      "rawValue": "Clicked",
                      "raw": "'Clicked'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 691,
                    "end": 707,
                    "loc": {
                      "start": {
                        "line": 27,
                        "column": 8
                      },
                      "end": {
                        "line": 27,
                        "column": 24
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 691,
                      "end": 697,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 8
                        },
                        "end": {
                          "line": 27,
                          "column": 14
                        }
                      },
                      "name": "Picked"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 699,
                      "end": 707,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 16
                        },
                        "end": {
                          "line": 27,
                          "column": 24
                        }
                      },
                      "value": "Picked",
                      "rawValue": "Picked",
                      "raw": "'Picked'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 717,
                    "end": 735,
                    "loc": {
                      "start": {
                        "line": 28,
                        "column": 8
                      },
                      "end": {
                        "line": 28,
                        "column": 26
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 717,
                      "end": 724,
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 8
                        },
                        "end": {
                          "line": 28,
                          "column": 15
                        }
                      },
                      "name": "Dropped"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 726,
                      "end": 735,
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 17
                        },
                        "end": {
                          "line": 28,
                          "column": 26
                        }
                      },
                      "value": "Dropped",
                      "rawValue": "Dropped",
                      "raw": "'Dropped'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 742,
                    "end": 760,
                    "loc": {
                      "start": {
                        "line": 29,
                        "column": 5
                      },
                      "end": {
                        "line": 29,
                        "column": 23
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 742,
                      "end": 749,
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 5
                        },
                        "end": {
                          "line": 29,
                          "column": 12
                        }
                      },
                      "name": "Dragged"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 751,
                      "end": 760,
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 14
                        },
                        "end": {
                          "line": 29,
                          "column": 23
                        }
                      },
                      "value": "Dragged",
                      "rawValue": "Dragged",
                      "raw": "'Dragged'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 767,
                    "end": 785,
                    "loc": {
                      "start": {
                        "line": 30,
                        "column": 5
                      },
                      "end": {
                        "line": 30,
                        "column": 23
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 767,
                      "end": 774,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 5
                        },
                        "end": {
                          "line": 30,
                          "column": 12
                        }
                      },
                      "name": "Hovered"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 776,
                      "end": 785,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 14
                        },
                        "end": {
                          "line": 30,
                          "column": 23
                        }
                      },
                      "value": "Hovered",
                      "rawValue": "Hovered",
                      "raw": "'Hovered'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 795,
                    "end": 817,
                    "loc": {
                      "start": {
                        "line": 31,
                        "column": 8
                      },
                      "end": {
                        "line": 31,
                        "column": 30
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 795,
                      "end": 804,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 8
                        },
                        "end": {
                          "line": 31,
                          "column": 17
                        }
                      },
                      "name": "Unhovered"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 806,
                      "end": 817,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 19
                        },
                        "end": {
                          "line": 31,
                          "column": 30
                        }
                      },
                      "value": "Unhovered",
                      "rawValue": "Unhovered",
                      "raw": "'Unhovered'"
                    },
                    "kind": "init"
                  },
                  {
                    "type": "Property",
                    "start": 827,
                    "end": 843,
                    "loc": {
                      "start": {
                        "line": 32,
                        "column": 8
                      },
                      "end": {
                        "line": 32,
                        "column": 24
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 827,
                      "end": 833,
                      "loc": {
                        "start": {
                          "line": 32,
                          "column": 8
                        },
                        "end": {
                          "line": 32,
                          "column": 14
                        }
                      },
                      "name": "Missed"
                    },
                    "value": {
                      "type": "Literal",
                      "start": 835,
                      "end": 843,
                      "loc": {
                        "start": {
                          "line": 32,
                          "column": 16
                        },
                        "end": {
                          "line": 32,
                          "column": 24
                        }
                      },
                      "value": "Missed",
                      "rawValue": "Missed",
                      "raw": "'Missed'"
                    },
                    "kind": "init"
                  }
                ]
              },
              "kind": "init"
            }
          ]
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 853,
      "end": 897,
      "loc": {
        "start": {
          "line": 36,
          "column": 0
        },
        "end": {
          "line": 36,
          "column": 44
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 853,
        "end": 896,
        "loc": {
          "start": {
            "line": 36,
            "column": 0
          },
          "end": {
            "line": 36,
            "column": 43
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 853,
          "end": 884,
          "loc": {
            "start": {
              "line": 36,
              "column": 0
            },
            "end": {
              "line": 36,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 853,
            "end": 877,
            "loc": {
              "start": {
                "line": 36,
                "column": 0
              },
              "end": {
                "line": 36,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 853,
              "end": 867,
              "loc": {
                "start": {
                  "line": 36,
                  "column": 0
                },
                "end": {
                  "line": 36,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 853,
                "end": 858,
                "loc": {
                  "start": {
                    "line": 36,
                    "column": 0
                  },
                  "end": {
                    "line": 36,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 859,
                "end": 867,
                "loc": {
                  "start": {
                    "line": 36,
                    "column": 6
                  },
                  "end": {
                    "line": 36,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 868,
              "end": 877,
              "loc": {
                "start": {
                  "line": 36,
                  "column": 15
                },
                "end": {
                  "line": 36,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 878,
            "end": 884,
            "loc": {
              "start": {
                "line": 36,
                "column": 25
              },
              "end": {
                "line": 36,
                "column": 31
              }
            },
            "name": "canvas"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 887,
          "end": 896,
          "loc": {
            "start": {
              "line": 36,
              "column": 34
            },
            "end": {
              "line": 36,
              "column": 43
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 898,
      "end": 940,
      "loc": {
        "start": {
          "line": 37,
          "column": 0
        },
        "end": {
          "line": 37,
          "column": 42
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 898,
        "end": 939,
        "loc": {
          "start": {
            "line": 37,
            "column": 0
          },
          "end": {
            "line": 37,
            "column": 41
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 898,
          "end": 927,
          "loc": {
            "start": {
              "line": 37,
              "column": 0
            },
            "end": {
              "line": 37,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 898,
            "end": 922,
            "loc": {
              "start": {
                "line": 37,
                "column": 0
              },
              "end": {
                "line": 37,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 898,
              "end": 912,
              "loc": {
                "start": {
                  "line": 37,
                  "column": 0
                },
                "end": {
                  "line": 37,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 898,
                "end": 903,
                "loc": {
                  "start": {
                    "line": 37,
                    "column": 0
                  },
                  "end": {
                    "line": 37,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 904,
                "end": 912,
                "loc": {
                  "start": {
                    "line": 37,
                    "column": 6
                  },
                  "end": {
                    "line": 37,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 913,
              "end": 922,
              "loc": {
                "start": {
                  "line": 37,
                  "column": 15
                },
                "end": {
                  "line": 37,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 923,
            "end": 927,
            "loc": {
              "start": {
                "line": 37,
                "column": 25
              },
              "end": {
                "line": 37,
                "column": 29
              }
            },
            "name": "view"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 930,
          "end": 939,
          "loc": {
            "start": {
              "line": 37,
              "column": 32
            },
            "end": {
              "line": 37,
              "column": 41
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 941,
      "end": 985,
      "loc": {
        "start": {
          "line": 38,
          "column": 0
        },
        "end": {
          "line": 38,
          "column": 44
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 941,
        "end": 984,
        "loc": {
          "start": {
            "line": 38,
            "column": 0
          },
          "end": {
            "line": 38,
            "column": 43
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 941,
          "end": 972,
          "loc": {
            "start": {
              "line": 38,
              "column": 0
            },
            "end": {
              "line": 38,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 941,
            "end": 965,
            "loc": {
              "start": {
                "line": 38,
                "column": 0
              },
              "end": {
                "line": 38,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 941,
              "end": 955,
              "loc": {
                "start": {
                  "line": 38,
                  "column": 0
                },
                "end": {
                  "line": 38,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 941,
                "end": 946,
                "loc": {
                  "start": {
                    "line": 38,
                    "column": 0
                  },
                  "end": {
                    "line": 38,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 947,
                "end": 955,
                "loc": {
                  "start": {
                    "line": 38,
                    "column": 6
                  },
                  "end": {
                    "line": 38,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 956,
              "end": 965,
              "loc": {
                "start": {
                  "line": 38,
                  "column": 15
                },
                "end": {
                  "line": 38,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 966,
            "end": 972,
            "loc": {
              "start": {
                "line": 38,
                "column": 25
              },
              "end": {
                "line": 38,
                "column": 31
              }
            },
            "name": "bounds"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 975,
          "end": 984,
          "loc": {
            "start": {
              "line": 38,
              "column": 34
            },
            "end": {
              "line": 38,
              "column": 43
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 986,
      "end": 1033,
      "loc": {
        "start": {
          "line": 39,
          "column": 0
        },
        "end": {
          "line": 39,
          "column": 47
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 986,
        "end": 1032,
        "loc": {
          "start": {
            "line": 39,
            "column": 0
          },
          "end": {
            "line": 39,
            "column": 46
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 986,
          "end": 1020,
          "loc": {
            "start": {
              "line": 39,
              "column": 0
            },
            "end": {
              "line": 39,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 986,
            "end": 1010,
            "loc": {
              "start": {
                "line": 39,
                "column": 0
              },
              "end": {
                "line": 39,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 986,
              "end": 1000,
              "loc": {
                "start": {
                  "line": 39,
                  "column": 0
                },
                "end": {
                  "line": 39,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 986,
                "end": 991,
                "loc": {
                  "start": {
                    "line": 39,
                    "column": 0
                  },
                  "end": {
                    "line": 39,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 992,
                "end": 1000,
                "loc": {
                  "start": {
                    "line": 39,
                    "column": 6
                  },
                  "end": {
                    "line": 39,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1001,
              "end": 1010,
              "loc": {
                "start": {
                  "line": 39,
                  "column": 15
                },
                "end": {
                  "line": 39,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1011,
            "end": 1020,
            "loc": {
              "start": {
                "line": 39,
                "column": 25
              },
              "end": {
                "line": 39,
                "column": 34
              }
            },
            "name": "materials"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 1023,
          "end": 1032,
          "loc": {
            "start": {
              "line": 39,
              "column": 37
            },
            "end": {
              "line": 39,
              "column": 46
            }
          },
          "name": "undefined"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1034,
      "end": 1088,
      "loc": {
        "start": {
          "line": 40,
          "column": 0
        },
        "end": {
          "line": 40,
          "column": 54
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1034,
        "end": 1087,
        "loc": {
          "start": {
            "line": 40,
            "column": 0
          },
          "end": {
            "line": 40,
            "column": 53
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1034,
          "end": 1080,
          "loc": {
            "start": {
              "line": 40,
              "column": 0
            },
            "end": {
              "line": 40,
              "column": 46
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1034,
            "end": 1058,
            "loc": {
              "start": {
                "line": 40,
                "column": 0
              },
              "end": {
                "line": 40,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1034,
              "end": 1048,
              "loc": {
                "start": {
                  "line": 40,
                  "column": 0
                },
                "end": {
                  "line": 40,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1034,
                "end": 1039,
                "loc": {
                  "start": {
                    "line": 40,
                    "column": 0
                  },
                  "end": {
                    "line": 40,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1040,
                "end": 1048,
                "loc": {
                  "start": {
                    "line": 40,
                    "column": 6
                  },
                  "end": {
                    "line": 40,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1049,
              "end": 1058,
              "loc": {
                "start": {
                  "line": 40,
                  "column": 15
                },
                "end": {
                  "line": 40,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1059,
            "end": 1080,
            "loc": {
              "start": {
                "line": 40,
                "column": 25
              },
              "end": {
                "line": 40,
                "column": 46
              }
            },
            "name": "updateParentMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1083,
          "end": 1087,
          "loc": {
            "start": {
              "line": 40,
              "column": 49
            },
            "end": {
              "line": 40,
              "column": 53
            }
          },
          "value": true,
          "rawValue": true,
          "raw": "true"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1089,
      "end": 1127,
      "loc": {
        "start": {
          "line": 41,
          "column": 0
        },
        "end": {
          "line": 41,
          "column": 38
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1089,
        "end": 1126,
        "loc": {
          "start": {
            "line": 41,
            "column": 0
          },
          "end": {
            "line": 41,
            "column": 37
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1089,
          "end": 1118,
          "loc": {
            "start": {
              "line": 41,
              "column": 0
            },
            "end": {
              "line": 41,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1089,
            "end": 1113,
            "loc": {
              "start": {
                "line": 41,
                "column": 0
              },
              "end": {
                "line": 41,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1089,
              "end": 1103,
              "loc": {
                "start": {
                  "line": 41,
                  "column": 0
                },
                "end": {
                  "line": 41,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1089,
                "end": 1094,
                "loc": {
                  "start": {
                    "line": 41,
                    "column": 0
                  },
                  "end": {
                    "line": 41,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1095,
                "end": 1103,
                "loc": {
                  "start": {
                    "line": 41,
                    "column": 6
                  },
                  "end": {
                    "line": 41,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1104,
              "end": 1113,
              "loc": {
                "start": {
                  "line": 41,
                  "column": 15
                },
                "end": {
                  "line": 41,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1114,
            "end": 1118,
            "loc": {
              "start": {
                "line": 41,
                "column": 25
              },
              "end": {
                "line": 41,
                "column": 29
              }
            },
            "name": "keep"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1121,
          "end": 1126,
          "loc": {
            "start": {
              "line": 41,
              "column": 32
            },
            "end": {
              "line": 41,
              "column": 37
            }
          },
          "value": false,
          "rawValue": false,
          "raw": "false"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1128,
      "end": 1167,
      "loc": {
        "start": {
          "line": 42,
          "column": 0
        },
        "end": {
          "line": 42,
          "column": 39
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1128,
        "end": 1166,
        "loc": {
          "start": {
            "line": 42,
            "column": 0
          },
          "end": {
            "line": 42,
            "column": 38
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1128,
          "end": 1159,
          "loc": {
            "start": {
              "line": 42,
              "column": 0
            },
            "end": {
              "line": 42,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1128,
            "end": 1152,
            "loc": {
              "start": {
                "line": 42,
                "column": 0
              },
              "end": {
                "line": 42,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1128,
              "end": 1142,
              "loc": {
                "start": {
                  "line": 42,
                  "column": 0
                },
                "end": {
                  "line": 42,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1128,
                "end": 1133,
                "loc": {
                  "start": {
                    "line": 42,
                    "column": 0
                  },
                  "end": {
                    "line": 42,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1134,
                "end": 1142,
                "loc": {
                  "start": {
                    "line": 42,
                    "column": 6
                  },
                  "end": {
                    "line": 42,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1143,
              "end": 1152,
              "loc": {
                "start": {
                  "line": 42,
                  "column": 15
                },
                "end": {
                  "line": 42,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1153,
            "end": 1159,
            "loc": {
              "start": {
                "line": 42,
                "column": 25
              },
              "end": {
                "line": 42,
                "column": 31
              }
            },
            "name": "tweens"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1162,
          "end": 1166,
          "loc": {
            "start": {
              "line": 42,
              "column": 34
            },
            "end": {
              "line": 42,
              "column": 38
            }
          },
          "value": true,
          "rawValue": true,
          "raw": "true"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1168,
      "end": 1212,
      "loc": {
        "start": {
          "line": 43,
          "column": 0
        },
        "end": {
          "line": 43,
          "column": 44
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1168,
        "end": 1211,
        "loc": {
          "start": {
            "line": 43,
            "column": 0
          },
          "end": {
            "line": 43,
            "column": 43
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1168,
          "end": 1204,
          "loc": {
            "start": {
              "line": 43,
              "column": 0
            },
            "end": {
              "line": 43,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1168,
            "end": 1192,
            "loc": {
              "start": {
                "line": 43,
                "column": 0
              },
              "end": {
                "line": 43,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1168,
              "end": 1182,
              "loc": {
                "start": {
                  "line": 43,
                  "column": 0
                },
                "end": {
                  "line": 43,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1168,
                "end": 1173,
                "loc": {
                  "start": {
                    "line": 43,
                    "column": 0
                  },
                  "end": {
                    "line": 43,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1174,
                "end": 1182,
                "loc": {
                  "start": {
                    "line": 43,
                    "column": 6
                  },
                  "end": {
                    "line": 43,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1183,
              "end": 1192,
              "loc": {
                "start": {
                  "line": 43,
                  "column": 15
                },
                "end": {
                  "line": 43,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1193,
            "end": 1204,
            "loc": {
              "start": {
                "line": 43,
                "column": 25
              },
              "end": {
                "line": 43,
                "column": 36
              }
            },
            "name": "interactive"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 1207,
          "end": 1211,
          "loc": {
            "start": {
              "line": 43,
              "column": 39
            },
            "end": {
              "line": 43,
              "column": 43
            }
          },
          "value": true,
          "rawValue": true,
          "raw": "true"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 1213,
      "end": 1262,
      "loc": {
        "start": {
          "line": 44,
          "column": 0
        },
        "end": {
          "line": 44,
          "column": 49
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1213,
        "end": 1261,
        "loc": {
          "start": {
            "line": 44,
            "column": 0
          },
          "end": {
            "line": 44,
            "column": 48
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1213,
          "end": 1249,
          "loc": {
            "start": {
              "line": 44,
              "column": 0
            },
            "end": {
              "line": 44,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1213,
            "end": 1237,
            "loc": {
              "start": {
                "line": 44,
                "column": 0
              },
              "end": {
                "line": 44,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1213,
              "end": 1227,
              "loc": {
                "start": {
                  "line": 44,
                  "column": 0
                },
                "end": {
                  "line": 44,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1213,
                "end": 1218,
                "loc": {
                  "start": {
                    "line": 44,
                    "column": 0
                  },
                  "end": {
                    "line": 44,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1219,
                "end": 1227,
                "loc": {
                  "start": {
                    "line": 44,
                    "column": 6
                  },
                  "end": {
                    "line": 44,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1228,
              "end": 1237,
              "loc": {
                "start": {
                  "line": 44,
                  "column": 15
                },
                "end": {
                  "line": 44,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1238,
            "end": 1249,
            "loc": {
              "start": {
                "line": 44,
                "column": 25
              },
              "end": {
                "line": 44,
                "column": 36
              }
            },
            "name": "interaction"
          },
          "computed": false
        },
        "right": {
          "type": "Identifier",
          "start": 1252,
          "end": 1261,
          "loc": {
            "start": {
              "line": 44,
              "column": 39
            },
            "end": {
              "line": 44,
              "column": 48
            }
          },
          "name": "undefined"
        }
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": " Extend Object3D with event emitter",
          "start": 1264,
          "end": 1301,
          "loc": {
            "start": {
              "line": 46,
              "column": 0
            },
            "end": {
              "line": 46,
              "column": 37
            }
          },
          "range": [
            1264,
            1301
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 1302,
      "end": 1341,
      "loc": {
        "start": {
          "line": 47,
          "column": 0
        },
        "end": {
          "line": 47,
          "column": 39
        }
      },
      "expression": {
        "type": "CallExpression",
        "start": 1302,
        "end": 1340,
        "loc": {
          "start": {
            "line": 47,
            "column": 0
          },
          "end": {
            "line": 47,
            "column": 38
          }
        },
        "callee": {
          "type": "MemberExpression",
          "start": 1302,
          "end": 1314,
          "loc": {
            "start": {
              "line": 47,
              "column": 0
            },
            "end": {
              "line": 47,
              "column": 12
            }
          },
          "object": {
            "type": "Identifier",
            "start": 1302,
            "end": 1308,
            "loc": {
              "start": {
                "line": 47,
                "column": 0
              },
              "end": {
                "line": 47,
                "column": 6
              }
            },
            "name": "Events",
            "leadingComments": null
          },
          "property": {
            "type": "Identifier",
            "start": 1309,
            "end": 1314,
            "loc": {
              "start": {
                "line": 47,
                "column": 7
              },
              "end": {
                "line": 47,
                "column": 12
              }
            },
            "name": "mixin"
          },
          "computed": false,
          "leadingComments": null
        },
        "arguments": [
          {
            "type": "MemberExpression",
            "start": 1315,
            "end": 1339,
            "loc": {
              "start": {
                "line": 47,
                "column": 13
              },
              "end": {
                "line": 47,
                "column": 37
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1315,
              "end": 1329,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 13
                },
                "end": {
                  "line": 47,
                  "column": 27
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1315,
                "end": 1320,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 13
                  },
                  "end": {
                    "line": 47,
                    "column": 18
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1321,
                "end": 1329,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 19
                  },
                  "end": {
                    "line": 47,
                    "column": 27
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1330,
              "end": 1339,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 28
                },
                "end": {
                  "line": 47,
                  "column": 37
                }
              },
              "name": "prototype"
            },
            "computed": false
          }
        ],
        "leadingComments": null
      },
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": " Extend Object3D with event emitter",
          "start": 1264,
          "end": 1301,
          "loc": {
            "start": {
              "line": 46,
              "column": 0
            },
            "end": {
              "line": 46,
              "column": 37
            }
          },
          "range": [
            1264,
            1301
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 1343,
      "end": 2339,
      "loc": {
        "start": {
          "line": 49,
          "column": 0
        },
        "end": {
          "line": 79,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 1343,
        "end": 2339,
        "loc": {
          "start": {
            "line": 49,
            "column": 0
          },
          "end": {
            "line": 79,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 1343,
          "end": 1385,
          "loc": {
            "start": {
              "line": 49,
              "column": 0
            },
            "end": {
              "line": 49,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 1343,
            "end": 1367,
            "loc": {
              "start": {
                "line": 49,
                "column": 0
              },
              "end": {
                "line": 49,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 1343,
              "end": 1357,
              "loc": {
                "start": {
                  "line": 49,
                  "column": 0
                },
                "end": {
                  "line": 49,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 1343,
                "end": 1348,
                "loc": {
                  "start": {
                    "line": 49,
                    "column": 0
                  },
                  "end": {
                    "line": 49,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 1349,
                "end": 1357,
                "loc": {
                  "start": {
                    "line": 49,
                    "column": 6
                  },
                  "end": {
                    "line": 49,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 1358,
              "end": 1367,
              "loc": {
                "start": {
                  "line": 49,
                  "column": 15
                },
                "end": {
                  "line": 49,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 1368,
            "end": 1385,
            "loc": {
              "start": {
                "line": 49,
                "column": 25
              },
              "end": {
                "line": 49,
                "column": 42
              }
            },
            "name": "createInteraction"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 1388,
          "end": 2339,
          "loc": {
            "start": {
              "line": 49,
              "column": 45
            },
            "end": {
              "line": 79,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 1368,
            "end": 1385,
            "loc": {
              "start": {
                "line": 49,
                "column": 25
              },
              "end": {
                "line": 49,
                "column": 42
              }
            },
            "name": "createInteraction"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 1397,
              "end": 1409,
              "loc": {
                "start": {
                  "line": 49,
                  "column": 54
                },
                "end": {
                  "line": 49,
                  "column": 66
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 1397,
                "end": 1404,
                "loc": {
                  "start": {
                    "line": 49,
                    "column": 54
                  },
                  "end": {
                    "line": 49,
                    "column": 61
                  }
                },
                "name": "options"
              },
              "right": {
                "type": "ObjectExpression",
                "start": 1407,
                "end": 1409,
                "loc": {
                  "start": {
                    "line": 49,
                    "column": 64
                  },
                  "end": {
                    "line": 49,
                    "column": 66
                  }
                },
                "properties": []
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 1411,
            "end": 2339,
            "loc": {
              "start": {
                "line": 49,
                "column": 68
              },
              "end": {
                "line": 79,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 1417,
                "end": 1459,
                "loc": {
                  "start": {
                    "line": 50,
                    "column": 4
                  },
                  "end": {
                    "line": 51,
                    "column": 20
                  }
                },
                "test": {
                  "type": "MemberExpression",
                  "start": 1421,
                  "end": 1437,
                  "loc": {
                    "start": {
                      "line": 50,
                      "column": 8
                    },
                    "end": {
                      "line": 50,
                      "column": 24
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 1421,
                    "end": 1425,
                    "loc": {
                      "start": {
                        "line": 50,
                        "column": 8
                      },
                      "end": {
                        "line": 50,
                        "column": 12
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 1426,
                    "end": 1437,
                    "loc": {
                      "start": {
                        "line": 50,
                        "column": 13
                      },
                      "end": {
                        "line": 50,
                        "column": 24
                      }
                    },
                    "name": "interaction"
                  },
                  "computed": false
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 1447,
                  "end": 1459,
                  "loc": {
                    "start": {
                      "line": 51,
                      "column": 8
                    },
                    "end": {
                      "line": 51,
                      "column": 20
                    }
                  },
                  "argument": {
                    "type": "ThisExpression",
                    "start": 1454,
                    "end": 1458,
                    "loc": {
                      "start": {
                        "line": 51,
                        "column": 15
                      },
                      "end": {
                        "line": 51,
                        "column": 19
                      }
                    }
                  }
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 1465,
                "end": 1673,
                "loc": {
                  "start": {
                    "line": 53,
                    "column": 4
                  },
                  "end": {
                    "line": 61,
                    "column": 6
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 1465,
                  "end": 1672,
                  "loc": {
                    "start": {
                      "line": 53,
                      "column": 4
                    },
                    "end": {
                      "line": 61,
                      "column": 5
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 1465,
                    "end": 1481,
                    "loc": {
                      "start": {
                        "line": 53,
                        "column": 4
                      },
                      "end": {
                        "line": 53,
                        "column": 20
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 1465,
                      "end": 1469,
                      "loc": {
                        "start": {
                          "line": 53,
                          "column": 4
                        },
                        "end": {
                          "line": 53,
                          "column": 8
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 1470,
                      "end": 1481,
                      "loc": {
                        "start": {
                          "line": 53,
                          "column": 9
                        },
                        "end": {
                          "line": 53,
                          "column": 20
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 1484,
                    "end": 1672,
                    "loc": {
                      "start": {
                        "line": 53,
                        "column": 23
                      },
                      "end": {
                        "line": 61,
                        "column": 5
                      }
                    },
                    "properties": [
                      {
                        "type": "Property",
                        "start": 1494,
                        "end": 1505,
                        "loc": {
                          "start": {
                            "line": 54,
                            "column": 8
                          },
                          "end": {
                            "line": 54,
                            "column": 19
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1494,
                          "end": 1499,
                          "loc": {
                            "start": {
                              "line": 54,
                              "column": 8
                            },
                            "end": {
                              "line": 54,
                              "column": 13
                            }
                          },
                          "name": "first"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1501,
                          "end": 1505,
                          "loc": {
                            "start": {
                              "line": 54,
                              "column": 15
                            },
                            "end": {
                              "line": 54,
                              "column": 19
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1515,
                        "end": 1526,
                        "loc": {
                          "start": {
                            "line": 55,
                            "column": 8
                          },
                          "end": {
                            "line": 55,
                            "column": 19
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1515,
                          "end": 1523,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 8
                            },
                            "end": {
                              "line": 55,
                              "column": 16
                            }
                          },
                          "name": "priority"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1525,
                          "end": 1526,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 18
                            },
                            "end": {
                              "line": 55,
                              "column": 19
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1536,
                        "end": 1549,
                        "loc": {
                          "start": {
                            "line": 56,
                            "column": 8
                          },
                          "end": {
                            "line": 56,
                            "column": 21
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1536,
                          "end": 1543,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 8
                            },
                            "end": {
                              "line": 56,
                              "column": 15
                            }
                          },
                          "name": "enabled"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1545,
                          "end": 1549,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 17
                            },
                            "end": {
                              "line": 56,
                              "column": 21
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1559,
                        "end": 1575,
                        "loc": {
                          "start": {
                            "line": 57,
                            "column": 8
                          },
                          "end": {
                            "line": 57,
                            "column": 24
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1559,
                          "end": 1568,
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 8
                            },
                            "end": {
                              "line": 57,
                              "column": 17
                            }
                          },
                          "name": "recursive"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 1570,
                          "end": 1575,
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 19
                            },
                            "end": {
                              "line": 57,
                              "column": 24
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1585,
                        "end": 1621,
                        "loc": {
                          "start": {
                            "line": 58,
                            "column": 8
                          },
                          "end": {
                            "line": 58,
                            "column": 44
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1585,
                          "end": 1593,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 8
                            },
                            "end": {
                              "line": 58,
                              "column": 16
                            }
                          },
                          "name": "approach"
                        },
                        "value": {
                          "type": "MemberExpression",
                          "start": 1595,
                          "end": 1621,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 18
                            },
                            "end": {
                              "line": 58,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1595,
                            "end": 1613,
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 18
                              },
                              "end": {
                                "line": 58,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1595,
                              "end": 1604,
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 18
                                },
                                "end": {
                                  "line": 58,
                                  "column": 27
                                }
                              },
                              "name": "Raycaster"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1605,
                              "end": 1613,
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 28
                                },
                                "end": {
                                  "line": 58,
                                  "column": 36
                                }
                              },
                              "name": "Approach"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1614,
                            "end": 1621,
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 37
                              },
                              "end": {
                                "line": 58,
                                "column": 44
                              }
                            },
                            "name": "Default"
                          },
                          "computed": false
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 1631,
                        "end": 1646,
                        "loc": {
                          "start": {
                            "line": 59,
                            "column": 8
                          },
                          "end": {
                            "line": 59,
                            "column": 23
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 1631,
                          "end": 1636,
                          "loc": {
                            "start": {
                              "line": 59,
                              "column": 8
                            },
                            "end": {
                              "line": 59,
                              "column": 13
                            }
                          },
                          "name": "types"
                        },
                        "value": {
                          "type": "ArrayExpression",
                          "start": 1638,
                          "end": 1646,
                          "loc": {
                            "start": {
                              "line": 59,
                              "column": 15
                            },
                            "end": {
                              "line": 59,
                              "column": 23
                            }
                          },
                          "elements": [
                            {
                              "type": "Literal",
                              "start": 1639,
                              "end": 1645,
                              "loc": {
                                "start": {
                                  "line": 59,
                                  "column": 16
                                },
                                "end": {
                                  "line": 59,
                                  "column": 22
                                }
                              },
                              "value": "Mesh",
                              "rawValue": "Mesh",
                              "raw": "'Mesh'"
                            }
                          ]
                        },
                        "kind": "init"
                      },
                      {
                        "type": "SpreadProperty",
                        "start": 1656,
                        "end": 1666,
                        "loc": {
                          "start": {
                            "line": 60,
                            "column": 8
                          },
                          "end": {
                            "line": 60,
                            "column": 18
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 1659,
                          "end": 1666,
                          "loc": {
                            "start": {
                              "line": 60,
                              "column": 11
                            },
                            "end": {
                              "line": 60,
                              "column": 18
                            }
                          },
                          "name": "options"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "VariableDeclaration",
                "start": 1679,
                "end": 1696,
                "loc": {
                  "start": {
                    "line": 63,
                    "column": 4
                  },
                  "end": {
                    "line": 63,
                    "column": 21
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 1683,
                    "end": 1695,
                    "loc": {
                      "start": {
                        "line": 63,
                        "column": 8
                      },
                      "end": {
                        "line": 63,
                        "column": 20
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 1683,
                      "end": 1688,
                      "loc": {
                        "start": {
                          "line": 63,
                          "column": 8
                        },
                        "end": {
                          "line": 63,
                          "column": 13
                        }
                      },
                      "name": "scope"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 1691,
                      "end": 1695,
                      "loc": {
                        "start": {
                          "line": 63,
                          "column": 16
                        },
                        "end": {
                          "line": 63,
                          "column": 20
                        }
                      }
                    }
                  }
                ],
                "kind": "let"
              },
              {
                "type": "ExpressionStatement",
                "start": 1701,
                "end": 2040,
                "loc": {
                  "start": {
                    "line": 64,
                    "column": 4
                  },
                  "end": {
                    "line": 72,
                    "column": 7
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 1701,
                  "end": 2039,
                  "loc": {
                    "start": {
                      "line": 64,
                      "column": 4
                    },
                    "end": {
                      "line": 72,
                      "column": 6
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 1701,
                    "end": 1722,
                    "loc": {
                      "start": {
                        "line": 64,
                        "column": 4
                      },
                      "end": {
                        "line": 64,
                        "column": 25
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 1701,
                      "end": 1717,
                      "loc": {
                        "start": {
                          "line": 64,
                          "column": 4
                        },
                        "end": {
                          "line": 64,
                          "column": 20
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 1701,
                        "end": 1715,
                        "loc": {
                          "start": {
                            "line": 64,
                            "column": 4
                          },
                          "end": {
                            "line": 64,
                            "column": 18
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 1701,
                          "end": 1705,
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 4
                            },
                            "end": {
                              "line": 64,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 1706,
                          "end": 1715,
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 9
                            },
                            "end": {
                              "line": 64,
                              "column": 18
                            }
                          },
                          "name": "viewFound"
                        },
                        "computed": false
                      },
                      "arguments": []
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 1718,
                      "end": 1722,
                      "loc": {
                        "start": {
                          "line": 64,
                          "column": 21
                        },
                        "end": {
                          "line": 64,
                          "column": 25
                        }
                      },
                      "name": "then"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 1723,
                      "end": 2038,
                      "loc": {
                        "start": {
                          "line": 64,
                          "column": 26
                        },
                        "end": {
                          "line": 72,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 1723,
                          "end": 1727,
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 26
                            },
                            "end": {
                              "line": 64,
                              "column": 30
                            }
                          },
                          "name": "view"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 1731,
                        "end": 2038,
                        "loc": {
                          "start": {
                            "line": 64,
                            "column": 34
                          },
                          "end": {
                            "line": 72,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 1741,
                            "end": 2032,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 8
                              },
                              "end": {
                                "line": 71,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 1745,
                              "end": 1790,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 12
                                },
                                "end": {
                                  "line": 65,
                                  "column": 57
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 1745,
                                "end": 1784,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 51
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 1745,
                                  "end": 1777,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1745,
                                    "end": 1769,
                                    "loc": {
                                      "start": {
                                        "line": 65,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 65,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1745,
                                      "end": 1761,
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 28
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1745,
                                        "end": 1749,
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 16
                                          }
                                        },
                                        "name": "view"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1750,
                                        "end": 1761,
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 28
                                          }
                                        },
                                        "name": "interaction"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1762,
                                      "end": 1769,
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 36
                                        }
                                      },
                                      "name": "targets"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1770,
                                    "end": 1777,
                                    "loc": {
                                      "start": {
                                        "line": 65,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 65,
                                        "column": 44
                                      }
                                    },
                                    "name": "indexOf"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 1778,
                                    "end": 1783,
                                    "loc": {
                                      "start": {
                                        "line": 65,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 65,
                                        "column": 50
                                      }
                                    },
                                    "name": "scope"
                                  }
                                ]
                              },
                              "operator": "==",
                              "right": {
                                "type": "UnaryExpression",
                                "start": 1788,
                                "end": 1790,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 57
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 1789,
                                  "end": 1790,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 57
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 1792,
                              "end": 2032,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 59
                                },
                                "end": {
                                  "line": 71,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1806,
                                  "end": 1843,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 49
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 1806,
                                    "end": 1842,
                                    "loc": {
                                      "start": {
                                        "line": 66,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 66,
                                        "column": 48
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 1806,
                                      "end": 1835,
                                      "loc": {
                                        "start": {
                                          "line": 66,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 66,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1806,
                                        "end": 1830,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1806,
                                          "end": 1822,
                                          "loc": {
                                            "start": {
                                              "line": 66,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 66,
                                              "column": 28
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 1806,
                                            "end": 1810,
                                            "loc": {
                                              "start": {
                                                "line": 66,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 66,
                                                "column": 16
                                              }
                                            },
                                            "name": "view"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1811,
                                            "end": 1822,
                                            "loc": {
                                              "start": {
                                                "line": 66,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 66,
                                                "column": 28
                                              }
                                            },
                                            "name": "interaction"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1823,
                                          "end": 1830,
                                          "loc": {
                                            "start": {
                                              "line": 66,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 66,
                                              "column": 36
                                            }
                                          },
                                          "name": "targets"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1831,
                                        "end": 1835,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 41
                                          }
                                        },
                                        "name": "push"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 1836,
                                        "end": 1841,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 47
                                          }
                                        },
                                        "name": "scope"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 1857,
                                  "end": 1871,
                                  "loc": {
                                    "start": {
                                      "line": 68,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 68,
                                      "column": 26
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 1861,
                                      "end": 1870,
                                      "loc": {
                                        "start": {
                                          "line": 68,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 68,
                                          "column": 25
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 1861,
                                        "end": 1866,
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 21
                                          }
                                        },
                                        "name": "count"
                                      },
                                      "init": {
                                        "type": "Literal",
                                        "start": 1869,
                                        "end": 1870,
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    }
                                  ],
                                  "kind": "let"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1884,
                                  "end": 1939,
                                  "loc": {
                                    "start": {
                                      "line": 69,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 69,
                                      "column": 67
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 1884,
                                    "end": 1938,
                                    "loc": {
                                      "start": {
                                        "line": 69,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 69,
                                        "column": 66
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 1884,
                                      "end": 1903,
                                      "loc": {
                                        "start": {
                                          "line": 69,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 69,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1884,
                                        "end": 1894,
                                        "loc": {
                                          "start": {
                                            "line": 69,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 69,
                                            "column": 22
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 1884,
                                          "end": 1888,
                                          "loc": {
                                            "start": {
                                              "line": 69,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 69,
                                              "column": 16
                                            }
                                          },
                                          "name": "view"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1889,
                                          "end": 1894,
                                          "loc": {
                                            "start": {
                                              "line": 69,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 69,
                                              "column": 22
                                            }
                                          },
                                          "name": "scene"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1895,
                                        "end": 1903,
                                        "loc": {
                                          "start": {
                                            "line": 69,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 69,
                                            "column": 31
                                          }
                                        },
                                        "name": "traverse"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 1904,
                                        "end": 1937,
                                        "loc": {
                                          "start": {
                                            "line": 69,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 69,
                                            "column": 65
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": true,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 1904,
                                            "end": 1908,
                                            "loc": {
                                              "start": {
                                                "line": 69,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 69,
                                                "column": 36
                                              }
                                            },
                                            "name": "item"
                                          }
                                        ],
                                        "body": {
                                          "type": "AssignmentExpression",
                                          "start": 1912,
                                          "end": 1937,
                                          "loc": {
                                            "start": {
                                              "line": 69,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 69,
                                              "column": 65
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 1912,
                                            "end": 1927,
                                            "loc": {
                                              "start": {
                                                "line": 69,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 69,
                                                "column": 55
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1912,
                                              "end": 1916,
                                              "loc": {
                                                "start": {
                                                  "line": 69,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 69,
                                                  "column": 44
                                                }
                                              },
                                              "name": "item"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1917,
                                              "end": 1927,
                                              "loc": {
                                                "start": {
                                                  "line": 69,
                                                  "column": 45
                                                },
                                                "end": {
                                                  "line": 69,
                                                  "column": 55
                                                }
                                              },
                                              "name": "depthIndex"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "UpdateExpression",
                                            "start": 1930,
                                            "end": 1937,
                                            "loc": {
                                              "start": {
                                                "line": 69,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 69,
                                                "column": 65
                                              }
                                            },
                                            "operator": "++",
                                            "prefix": false,
                                            "argument": {
                                              "type": "Identifier",
                                              "start": 1930,
                                              "end": 1935,
                                              "loc": {
                                                "start": {
                                                  "line": 69,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 69,
                                                  "column": 63
                                                }
                                              },
                                              "name": "count"
                                            }
                                          }
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1952,
                                  "end": 2022,
                                  "loc": {
                                    "start": {
                                      "line": 70,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 70,
                                      "column": 82
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 1952,
                                    "end": 2021,
                                    "loc": {
                                      "start": {
                                        "line": 70,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 70,
                                        "column": 81
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 1952,
                                      "end": 1981,
                                      "loc": {
                                        "start": {
                                          "line": 70,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 70,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1952,
                                        "end": 1976,
                                        "loc": {
                                          "start": {
                                            "line": 70,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 70,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1952,
                                          "end": 1968,
                                          "loc": {
                                            "start": {
                                              "line": 70,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 70,
                                              "column": 28
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 1952,
                                            "end": 1956,
                                            "loc": {
                                              "start": {
                                                "line": 70,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 70,
                                                "column": 16
                                              }
                                            },
                                            "name": "view"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1957,
                                            "end": 1968,
                                            "loc": {
                                              "start": {
                                                "line": 70,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 70,
                                                "column": 28
                                              }
                                            },
                                            "name": "interaction"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1969,
                                          "end": 1976,
                                          "loc": {
                                            "start": {
                                              "line": 70,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 70,
                                              "column": 36
                                            }
                                          },
                                          "name": "targets"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1977,
                                        "end": 1981,
                                        "loc": {
                                          "start": {
                                            "line": 70,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 70,
                                            "column": 41
                                          }
                                        },
                                        "name": "sort"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 1983,
                                        "end": 2020,
                                        "loc": {
                                          "start": {
                                            "line": 70,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 70,
                                            "column": 80
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": true,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 1984,
                                            "end": 1985,
                                            "loc": {
                                              "start": {
                                                "line": 70,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 70,
                                                "column": 45
                                              }
                                            },
                                            "name": "a"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 1987,
                                            "end": 1988,
                                            "loc": {
                                              "start": {
                                                "line": 70,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 70,
                                                "column": 48
                                              }
                                            },
                                            "name": "b"
                                          }
                                        ],
                                        "body": {
                                          "type": "BinaryExpression",
                                          "start": 1993,
                                          "end": 2020,
                                          "loc": {
                                            "start": {
                                              "line": 70,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 70,
                                              "column": 80
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 1993,
                                            "end": 2005,
                                            "loc": {
                                              "start": {
                                                "line": 70,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 70,
                                                "column": 65
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1993,
                                              "end": 1994,
                                              "loc": {
                                                "start": {
                                                  "line": 70,
                                                  "column": 53
                                                },
                                                "end": {
                                                  "line": 70,
                                                  "column": 54
                                                }
                                              },
                                              "name": "a"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1995,
                                              "end": 2005,
                                              "loc": {
                                                "start": {
                                                  "line": 70,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 70,
                                                  "column": 65
                                                }
                                              },
                                              "name": "depthIndex"
                                            },
                                            "computed": false
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 2008,
                                            "end": 2020,
                                            "loc": {
                                              "start": {
                                                "line": 70,
                                                "column": 68
                                              },
                                              "end": {
                                                "line": 70,
                                                "column": 80
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2008,
                                              "end": 2009,
                                              "loc": {
                                                "start": {
                                                  "line": 70,
                                                  "column": 68
                                                },
                                                "end": {
                                                  "line": 70,
                                                  "column": 69
                                                }
                                              },
                                              "name": "b"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2010,
                                              "end": 2020,
                                              "loc": {
                                                "start": {
                                                  "line": 70,
                                                  "column": 70
                                                },
                                                "end": {
                                                  "line": 70,
                                                  "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": 2046,
                    "end": 2167,
                    "loc": {
                      "start": {
                        "line": 74,
                        "column": 4
                      },
                      "end": {
                        "line": 74,
                        "column": 125
                      }
                    },
                    "range": [
                      2046,
                      2167
                    ]
                  }
                ]
              },
              {
                "type": "ExpressionStatement",
                "start": 2172,
                "end": 2319,
                "loc": {
                  "start": {
                    "line": 75,
                    "column": 4
                  },
                  "end": {
                    "line": 76,
                    "column": 123
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 2172,
                  "end": 2318,
                  "loc": {
                    "start": {
                      "line": 75,
                      "column": 4
                    },
                    "end": {
                      "line": 76,
                      "column": 122
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 2172,
                    "end": 2184,
                    "loc": {
                      "start": {
                        "line": 75,
                        "column": 4
                      },
                      "end": {
                        "line": 75,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 2172,
                      "end": 2176,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 4
                        },
                        "end": {
                          "line": 75,
                          "column": 8
                        }
                      },
                      "leadingComments": null
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 2177,
                      "end": 2184,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 9
                        },
                        "end": {
                          "line": 75,
                          "column": 16
                        }
                      },
                      "name": "inspect"
                    },
                    "computed": false,
                    "leadingComments": null
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 2185,
                      "end": 2317,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 17
                        },
                        "end": {
                          "line": 76,
                          "column": 121
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": true,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 2185,
                          "end": 2192,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 17
                            },
                            "end": {
                              "line": 75,
                              "column": 24
                            }
                          },
                          "name": "context"
                        }
                      ],
                      "body": {
                        "type": "AssignmentExpression",
                        "start": 2204,
                        "end": 2317,
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 8
                          },
                          "end": {
                            "line": 76,
                            "column": 121
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2204,
                          "end": 2228,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 8
                            },
                            "end": {
                              "line": 76,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2204,
                            "end": 2220,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 8
                              },
                              "end": {
                                "line": 76,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 2204,
                              "end": 2208,
                              "loc": {
                                "start": {
                                  "line": 76,
                                  "column": 8
                                },
                                "end": {
                                  "line": 76,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2209,
                              "end": 2220,
                              "loc": {
                                "start": {
                                  "line": 76,
                                  "column": 13
                                },
                                "end": {
                                  "line": 76,
                                  "column": 24
                                }
                              },
                              "name": "interaction"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2221,
                            "end": 2228,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 25
                              },
                              "end": {
                                "line": 76,
                                "column": 32
                              }
                            },
                            "name": "_active"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "UnaryExpression",
                          "start": 2231,
                          "end": 2317,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 35
                            },
                            "end": {
                              "line": 76,
                              "column": 121
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 2232,
                            "end": 2317,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 36
                              },
                              "end": {
                                "line": 76,
                                "column": 121
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "CallExpression",
                              "start": 2233,
                              "end": 2317,
                              "loc": {
                                "start": {
                                  "line": 76,
                                  "column": 37
                                },
                                "end": {
                                  "line": 76,
                                  "column": 121
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 2233,
                                "end": 2266,
                                "loc": {
                                  "start": {
                                    "line": 76,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 76,
                                    "column": 70
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 2233,
                                  "end": 2261,
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 76,
                                      "column": 65
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 2233,
                                    "end": 2244,
                                    "loc": {
                                      "start": {
                                        "line": 76,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 76,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2233,
                                      "end": 2239,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 43
                                        }
                                      },
                                      "name": "Object"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2240,
                                      "end": 2244,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 48
                                        }
                                      },
                                      "name": "keys"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 2245,
                                      "end": 2260,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 64
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 2245,
                                        "end": 2249,
                                        "loc": {
                                          "start": {
                                            "line": 76,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 76,
                                            "column": 53
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2250,
                                        "end": 2260,
                                        "loc": {
                                          "start": {
                                            "line": 76,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 76,
                                            "column": 64
                                          }
                                        },
                                        "name": "_callbacks"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2262,
                                  "end": 2266,
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 66
                                    },
                                    "end": {
                                      "line": 76,
                                      "column": 70
                                    }
                                  },
                                  "name": "find"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 2267,
                                  "end": 2316,
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 76,
                                      "column": 120
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 2267,
                                      "end": 2271,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 75
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 2275,
                                    "end": 2316,
                                    "loc": {
                                      "start": {
                                        "line": 76,
                                        "column": 79
                                      },
                                      "end": {
                                        "line": 76,
                                        "column": 120
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 2275,
                                      "end": 2279,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 79
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 83
                                        }
                                      },
                                      "name": "item"
                                    },
                                    "operator": "in",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 2283,
                                      "end": 2316,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 87
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 120
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 2283,
                                        "end": 2304,
                                        "loc": {
                                          "start": {
                                            "line": 76,
                                            "column": 87
                                          },
                                          "end": {
                                            "line": 76,
                                            "column": 108
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 2283,
                                          "end": 2297,
                                          "loc": {
                                            "start": {
                                              "line": 76,
                                              "column": 87
                                            },
                                            "end": {
                                              "line": 76,
                                              "column": 101
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 2283,
                                            "end": 2288,
                                            "loc": {
                                              "start": {
                                                "line": 76,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 76,
                                                "column": 92
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2289,
                                            "end": 2297,
                                            "loc": {
                                              "start": {
                                                "line": 76,
                                                "column": 93
                                              },
                                              "end": {
                                                "line": 76,
                                                "column": 101
                                              }
                                            },
                                            "name": "Object3D"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2298,
                                          "end": 2304,
                                          "loc": {
                                            "start": {
                                              "line": 76,
                                              "column": 102
                                            },
                                            "end": {
                                              "line": 76,
                                              "column": 108
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2305,
                                        "end": 2316,
                                        "loc": {
                                          "start": {
                                            "line": 76,
                                            "column": 109
                                          },
                                          "end": {
                                            "line": 76,
                                            "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": 2046,
                    "end": 2167,
                    "loc": {
                      "start": {
                        "line": 74,
                        "column": 4
                      },
                      "end": {
                        "line": 74,
                        "column": 125
                      }
                    },
                    "range": [
                      2046,
                      2167
                    ]
                  }
                ]
              },
              {
                "type": "ReturnStatement",
                "start": 2325,
                "end": 2337,
                "loc": {
                  "start": {
                    "line": 78,
                    "column": 4
                  },
                  "end": {
                    "line": 78,
                    "column": 16
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 2332,
                  "end": 2336,
                  "loc": {
                    "start": {
                      "line": 78,
                      "column": 11
                    },
                    "end": {
                      "line": 78,
                      "column": 15
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 2341,
      "end": 2898,
      "loc": {
        "start": {
          "line": 81,
          "column": 0
        },
        "end": {
          "line": 95,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 2341,
        "end": 2898,
        "loc": {
          "start": {
            "line": 81,
            "column": 0
          },
          "end": {
            "line": 95,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 2341,
          "end": 2383,
          "loc": {
            "start": {
              "line": 81,
              "column": 0
            },
            "end": {
              "line": 81,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 2341,
            "end": 2365,
            "loc": {
              "start": {
                "line": 81,
                "column": 0
              },
              "end": {
                "line": 81,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 2341,
              "end": 2355,
              "loc": {
                "start": {
                  "line": 81,
                  "column": 0
                },
                "end": {
                  "line": 81,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 2341,
                "end": 2346,
                "loc": {
                  "start": {
                    "line": 81,
                    "column": 0
                  },
                  "end": {
                    "line": 81,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 2347,
                "end": 2355,
                "loc": {
                  "start": {
                    "line": 81,
                    "column": 6
                  },
                  "end": {
                    "line": 81,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 2356,
              "end": 2365,
              "loc": {
                "start": {
                  "line": 81,
                  "column": 15
                },
                "end": {
                  "line": 81,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 2366,
            "end": 2383,
            "loc": {
              "start": {
                "line": 81,
                "column": 25
              },
              "end": {
                "line": 81,
                "column": 42
              }
            },
            "name": "removeInteraction"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 2386,
          "end": 2898,
          "loc": {
            "start": {
              "line": 81,
              "column": 45
            },
            "end": {
              "line": 95,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 2366,
            "end": 2383,
            "loc": {
              "start": {
                "line": 81,
                "column": 25
              },
              "end": {
                "line": 81,
                "column": 42
              }
            },
            "name": "removeInteraction"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 2397,
            "end": 2898,
            "loc": {
              "start": {
                "line": 81,
                "column": 56
              },
              "end": {
                "line": 95,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 2403,
                "end": 2896,
                "loc": {
                  "start": {
                    "line": 82,
                    "column": 4
                  },
                  "end": {
                    "line": 94,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 2407,
                  "end": 2436,
                  "loc": {
                    "start": {
                      "line": 82,
                      "column": 8
                    },
                    "end": {
                      "line": 82,
                      "column": 37
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 2407,
                    "end": 2416,
                    "loc": {
                      "start": {
                        "line": 82,
                        "column": 8
                      },
                      "end": {
                        "line": 82,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 2407,
                      "end": 2411,
                      "loc": {
                        "start": {
                          "line": 82,
                          "column": 8
                        },
                        "end": {
                          "line": 82,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 2412,
                      "end": 2416,
                      "loc": {
                        "start": {
                          "line": 82,
                          "column": 13
                        },
                        "end": {
                          "line": 82,
                          "column": 17
                        }
                      },
                      "name": "view"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "MemberExpression",
                    "start": 2420,
                    "end": 2436,
                    "loc": {
                      "start": {
                        "line": 82,
                        "column": 21
                      },
                      "end": {
                        "line": 82,
                        "column": 37
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 2420,
                      "end": 2424,
                      "loc": {
                        "start": {
                          "line": 82,
                          "column": 21
                        },
                        "end": {
                          "line": 82,
                          "column": 25
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 2425,
                      "end": 2436,
                      "loc": {
                        "start": {
                          "line": 82,
                          "column": 26
                        },
                        "end": {
                          "line": 82,
                          "column": 37
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 2438,
                  "end": 2896,
                  "loc": {
                    "start": {
                      "line": 82,
                      "column": 39
                    },
                    "end": {
                      "line": 94,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 2448,
                      "end": 2477,
                      "loc": {
                        "start": {
                          "line": 83,
                          "column": 8
                        },
                        "end": {
                          "line": 83,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 2448,
                        "end": 2476,
                        "loc": {
                          "start": {
                            "line": 83,
                            "column": 8
                          },
                          "end": {
                            "line": 83,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2448,
                          "end": 2464,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 8
                            },
                            "end": {
                              "line": 83,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2448,
                            "end": 2452,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 8
                              },
                              "end": {
                                "line": 83,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2453,
                            "end": 2464,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 13
                              },
                              "end": {
                                "line": 83,
                                "column": 24
                              }
                            },
                            "name": "interaction"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 2467,
                          "end": 2476,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 27
                            },
                            "end": {
                              "line": 83,
                              "column": 36
                            }
                          },
                          "name": "undefined"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2486,
                      "end": 2527,
                      "loc": {
                        "start": {
                          "line": 84,
                          "column": 8
                        },
                        "end": {
                          "line": 84,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2486,
                        "end": 2526,
                        "loc": {
                          "start": {
                            "line": 84,
                            "column": 8
                          },
                          "end": {
                            "line": 84,
                            "column": 48
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2486,
                          "end": 2520,
                          "loc": {
                            "start": {
                              "line": 84,
                              "column": 8
                            },
                            "end": {
                              "line": 84,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2486,
                            "end": 2507,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 8
                              },
                              "end": {
                                "line": 84,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 2486,
                              "end": 2495,
                              "loc": {
                                "start": {
                                  "line": 84,
                                  "column": 8
                                },
                                "end": {
                                  "line": 84,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2486,
                                "end": 2490,
                                "loc": {
                                  "start": {
                                    "line": 84,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 84,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2491,
                                "end": 2495,
                                "loc": {
                                  "start": {
                                    "line": 84,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 84,
                                    "column": 17
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2496,
                              "end": 2507,
                              "loc": {
                                "start": {
                                  "line": 84,
                                  "column": 18
                                },
                                "end": {
                                  "line": 84,
                                  "column": 29
                                }
                              },
                              "name": "interaction"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2508,
                            "end": 2520,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 30
                              },
                              "end": {
                                "line": 84,
                                "column": 42
                              }
                            },
                            "name": "removeTarget"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 2521,
                            "end": 2525,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 43
                              },
                              "end": {
                                "line": 84,
                                "column": 47
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2536,
                      "end": 2560,
                      "loc": {
                        "start": {
                          "line": 85,
                          "column": 8
                        },
                        "end": {
                          "line": 85,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2536,
                        "end": 2559,
                        "loc": {
                          "start": {
                            "line": 85,
                            "column": 8
                          },
                          "end": {
                            "line": 85,
                            "column": 31
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2536,
                          "end": 2557,
                          "loc": {
                            "start": {
                              "line": 85,
                              "column": 8
                            },
                            "end": {
                              "line": 85,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2536,
                            "end": 2540,
                            "loc": {
                              "start": {
                                "line": 85,
                                "column": 8
                              },
                              "end": {
                                "line": 85,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2541,
                            "end": 2557,
                            "loc": {
                              "start": {
                                "line": 85,
                                "column": 13
                              },
                              "end": {
                                "line": 85,
                                "column": 29
                              }
                            },
                            "name": "removeInspectors"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2569,
                      "end": 2890,
                      "loc": {
                        "start": {
                          "line": 86,
                          "column": 8
                        },
                        "end": {
                          "line": 93,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2569,
                        "end": 2889,
                        "loc": {
                          "start": {
                            "line": 86,
                            "column": 8
                          },
                          "end": {
                            "line": 93,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2569,
                          "end": 2588,
                          "loc": {
                            "start": {
                              "line": 86,
                              "column": 8
                            },
                            "end": {
                              "line": 86,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2569,
                            "end": 2573,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 8
                              },
                              "end": {
                                "line": 86,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2574,
                            "end": 2588,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 13
                              },
                              "end": {
                                "line": 86,
                                "column": 27
                              }
                            },
                            "name": "removeListener"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 2589,
                            "end": 2888,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 28
                              },
                              "end": {
                                "line": 93,
                                "column": 9
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 2603,
                                "end": 2637,
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2603,
                                  "end": 2629,
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2603,
                                    "end": 2617,
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2603,
                                      "end": 2610,
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2611,
                                      "end": 2617,
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2618,
                                    "end": 2629,
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2630,
                                  "end": 2637,
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 46
                                    }
                                  },
                                  "name": "Clicked"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2651,
                                "end": 2684,
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2651,
                                  "end": 2677,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2651,
                                    "end": 2665,
                                    "loc": {
                                      "start": {
                                        "line": 88,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 88,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2651,
                                      "end": 2658,
                                      "loc": {
                                        "start": {
                                          "line": 88,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 88,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2659,
                                      "end": 2665,
                                      "loc": {
                                        "start": {
                                          "line": 88,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 88,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2666,
                                    "end": 2677,
                                    "loc": {
                                      "start": {
                                        "line": 88,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 88,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2678,
                                  "end": 2684,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 45
                                    }
                                  },
                                  "name": "Picked"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2698,
                                "end": 2732,
                                "loc": {
                                  "start": {
                                    "line": 89,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2698,
                                  "end": 2724,
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2698,
                                    "end": 2712,
                                    "loc": {
                                      "start": {
                                        "line": 89,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2698,
                                      "end": 2705,
                                      "loc": {
                                        "start": {
                                          "line": 89,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 89,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2706,
                                      "end": 2712,
                                      "loc": {
                                        "start": {
                                          "line": 89,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 89,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2713,
                                    "end": 2724,
                                    "loc": {
                                      "start": {
                                        "line": 89,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2725,
                                  "end": 2732,
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 46
                                    }
                                  },
                                  "name": "Dropped"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2746,
                                "end": 2780,
                                "loc": {
                                  "start": {
                                    "line": 90,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 90,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2746,
                                  "end": 2772,
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2746,
                                    "end": 2760,
                                    "loc": {
                                      "start": {
                                        "line": 90,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 90,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2746,
                                      "end": 2753,
                                      "loc": {
                                        "start": {
                                          "line": 90,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 90,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2754,
                                      "end": 2760,
                                      "loc": {
                                        "start": {
                                          "line": 90,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 90,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2761,
                                    "end": 2772,
                                    "loc": {
                                      "start": {
                                        "line": 90,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 90,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2773,
                                  "end": 2780,
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 46
                                    }
                                  },
                                  "name": "Dragged"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2794,
                                "end": 2828,
                                "loc": {
                                  "start": {
                                    "line": 91,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 91,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2794,
                                  "end": 2820,
                                  "loc": {
                                    "start": {
                                      "line": 91,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 91,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2794,
                                    "end": 2808,
                                    "loc": {
                                      "start": {
                                        "line": 91,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 91,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2794,
                                      "end": 2801,
                                      "loc": {
                                        "start": {
                                          "line": 91,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 91,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2802,
                                      "end": 2808,
                                      "loc": {
                                        "start": {
                                          "line": 91,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 91,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2809,
                                    "end": 2820,
                                    "loc": {
                                      "start": {
                                        "line": 91,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 91,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2821,
                                  "end": 2828,
                                  "loc": {
                                    "start": {
                                      "line": 91,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 91,
                                      "column": 46
                                    }
                                  },
                                  "name": "Hovered"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 2842,
                                "end": 2878,
                                "loc": {
                                  "start": {
                                    "line": 92,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 92,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2842,
                                  "end": 2868,
                                  "loc": {
                                    "start": {
                                      "line": 92,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 92,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2842,
                                    "end": 2856,
                                    "loc": {
                                      "start": {
                                        "line": 92,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 92,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2842,
                                      "end": 2849,
                                      "loc": {
                                        "start": {
                                          "line": 92,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 92,
                                          "column": 19
                                        }
                                      },
                                      "name": "Object3"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2850,
                                      "end": 2856,
                                      "loc": {
                                        "start": {
                                          "line": 92,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 92,
                                          "column": 26
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2857,
                                    "end": 2868,
                                    "loc": {
                                      "start": {
                                        "line": 92,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 92,
                                        "column": 38
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2869,
                                  "end": 2878,
                                  "loc": {
                                    "start": {
                                      "line": 92,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 92,
                                      "column": 48
                                    }
                                  },
                                  "name": "Unhovered"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 2900,
      "end": 3123,
      "loc": {
        "start": {
          "line": 97,
          "column": 0
        },
        "end": {
          "line": 101,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 2900,
        "end": 3123,
        "loc": {
          "start": {
            "line": 97,
            "column": 0
          },
          "end": {
            "line": 101,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 2900,
          "end": 2934,
          "loc": {
            "start": {
              "line": 97,
              "column": 0
            },
            "end": {
              "line": 97,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 2900,
            "end": 2924,
            "loc": {
              "start": {
                "line": 97,
                "column": 0
              },
              "end": {
                "line": 97,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 2900,
              "end": 2914,
              "loc": {
                "start": {
                  "line": 97,
                  "column": 0
                },
                "end": {
                  "line": 97,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 2900,
                "end": 2905,
                "loc": {
                  "start": {
                    "line": 97,
                    "column": 0
                  },
                  "end": {
                    "line": 97,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 2906,
                "end": 2914,
                "loc": {
                  "start": {
                    "line": 97,
                    "column": 6
                  },
                  "end": {
                    "line": 97,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 2915,
              "end": 2924,
              "loc": {
                "start": {
                  "line": 97,
                  "column": 15
                },
                "end": {
                  "line": 97,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 2925,
            "end": 2934,
            "loc": {
              "start": {
                "line": 97,
                "column": 25
              },
              "end": {
                "line": 97,
                "column": 34
              }
            },
            "name": "viewFound"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 2937,
          "end": 3123,
          "loc": {
            "start": {
              "line": 97,
              "column": 37
            },
            "end": {
              "line": 101,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 2925,
            "end": 2934,
            "loc": {
              "start": {
                "line": 97,
                "column": 25
              },
              "end": {
                "line": 97,
                "column": 34
              }
            },
            "name": "viewFound"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 2948,
            "end": 3123,
            "loc": {
              "start": {
                "line": 97,
                "column": 48
              },
              "end": {
                "line": 101,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 2954,
                "end": 2971,
                "loc": {
                  "start": {
                    "line": 98,
                    "column": 4
                  },
                  "end": {
                    "line": 98,
                    "column": 21
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 2958,
                    "end": 2970,
                    "loc": {
                      "start": {
                        "line": 98,
                        "column": 8
                      },
                      "end": {
                        "line": 98,
                        "column": 20
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 2958,
                      "end": 2963,
                      "loc": {
                        "start": {
                          "line": 98,
                          "column": 8
                        },
                        "end": {
                          "line": 98,
                          "column": 13
                        }
                      },
                      "name": "scope"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 2966,
                      "end": 2970,
                      "loc": {
                        "start": {
                          "line": 98,
                          "column": 16
                        },
                        "end": {
                          "line": 98,
                          "column": 20
                        }
                      }
                    }
                  }
                ],
                "kind": "let"
              },
              {
                "type": "ReturnStatement",
                "start": 2976,
                "end": 3121,
                "loc": {
                  "start": {
                    "line": 99,
                    "column": 4
                  },
                  "end": {
                    "line": 100,
                    "column": 95
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 2983,
                  "end": 3120,
                  "loc": {
                    "start": {
                      "line": 99,
                      "column": 11
                    },
                    "end": {
                      "line": 100,
                      "column": 94
                    }
                  },
                  "test": {
                    "type": "UnaryExpression",
                    "start": 2983,
                    "end": 2994,
                    "loc": {
                      "start": {
                        "line": 99,
                        "column": 11
                      },
                      "end": {
                        "line": 99,
                        "column": 22
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 2984,
                      "end": 2994,
                      "loc": {
                        "start": {
                          "line": 99,
                          "column": 12
                        },
                        "end": {
                          "line": 99,
                          "column": 22
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 2985,
                        "end": 2994,
                        "loc": {
                          "start": {
                            "line": 99,
                            "column": 13
                          },
                          "end": {
                            "line": 99,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 2985,
                          "end": 2989,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 13
                            },
                            "end": {
                              "line": 99,
                              "column": 17
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2990,
                          "end": 2994,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 18
                            },
                            "end": {
                              "line": 99,
                              "column": 22
                            }
                          },
                          "name": "view"
                        },
                        "computed": false
                      }
                    }
                  },
                  "consequent": {
                    "type": "CallExpression",
                    "start": 2997,
                    "end": 3023,
                    "loc": {
                      "start": {
                        "line": 99,
                        "column": 25
                      },
                      "end": {
                        "line": 99,
                        "column": 51
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 2997,
                      "end": 3012,
                      "loc": {
                        "start": {
                          "line": 99,
                          "column": 25
                        },
                        "end": {
                          "line": 99,
                          "column": 40
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 2997,
                        "end": 3004,
                        "loc": {
                          "start": {
                            "line": 99,
                            "column": 25
                          },
                          "end": {
                            "line": 99,
                            "column": 32
                          }
                        },
                        "name": "Promise"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3005,
                        "end": 3012,
                        "loc": {
                          "start": {
                            "line": 99,
                            "column": 33
                          },
                          "end": {
                            "line": 99,
                            "column": 40
                          }
                        },
                        "name": "resolve"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "MemberExpression",
                        "start": 3013,
                        "end": 3022,
                        "loc": {
                          "start": {
                            "line": 99,
                            "column": 41
                          },
                          "end": {
                            "line": 99,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 3013,
                          "end": 3017,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 41
                            },
                            "end": {
                              "line": 99,
                              "column": 45
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3018,
                          "end": 3022,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 46
                            },
                            "end": {
                              "line": 99,
                              "column": 50
                            }
                          },
                          "name": "view"
                        },
                        "computed": false
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 3034,
                    "end": 3120,
                    "loc": {
                      "start": {
                        "line": 100,
                        "column": 8
                      },
                      "end": {
                        "line": 100,
                        "column": 94
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 3038,
                      "end": 3045,
                      "loc": {
                        "start": {
                          "line": 100,
                          "column": 12
                        },
                        "end": {
                          "line": 100,
                          "column": 19
                        }
                      },
                      "name": "Promise"
                    },
                    "arguments": [
                      {
                        "type": "ArrowFunctionExpression",
                        "start": 3046,
                        "end": 3119,
                        "loc": {
                          "start": {
                            "line": 100,
                            "column": 20
                          },
                          "end": {
                            "line": 100,
                            "column": 93
                          }
                        },
                        "id": null,
                        "generator": false,
                        "expression": true,
                        "async": false,
                        "params": [
                          {
                            "type": "Identifier",
                            "start": 3046,
                            "end": 3053,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 20
                              },
                              "end": {
                                "line": 100,
                                "column": 27
                              }
                            },
                            "name": "resolve"
                          }
                        ],
                        "body": {
                          "type": "CallExpression",
                          "start": 3057,
                          "end": 3119,
                          "loc": {
                            "start": {
                              "line": 100,
                              "column": 31
                            },
                            "end": {
                              "line": 100,
                              "column": 93
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3057,
                            "end": 3067,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 31
                              },
                              "end": {
                                "line": 100,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3057,
                              "end": 3062,
                              "loc": {
                                "start": {
                                  "line": 100,
                                  "column": 31
                                },
                                "end": {
                                  "line": 100,
                                  "column": 36
                                }
                              },
                              "name": "scope"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3063,
                              "end": 3067,
                              "loc": {
                                "start": {
                                  "line": 100,
                                  "column": 37
                                },
                                "end": {
                                  "line": 100,
                                  "column": 41
                                }
                              },
                              "name": "once"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 3068,
                              "end": 3109,
                              "loc": {
                                "start": {
                                  "line": 100,
                                  "column": 42
                                },
                                "end": {
                                  "line": 100,
                                  "column": 83
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3068,
                                "end": 3099,
                                "loc": {
                                  "start": {
                                    "line": 100,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 100,
                                    "column": 73
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3068,
                                  "end": 3089,
                                  "loc": {
                                    "start": {
                                      "line": 100,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 100,
                                      "column": 63
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 3068,
                                    "end": 3082,
                                    "loc": {
                                      "start": {
                                        "line": 100,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 100,
                                        "column": 56
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 3068,
                                      "end": 3073,
                                      "loc": {
                                        "start": {
                                          "line": 100,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 100,
                                          "column": 47
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3074,
                                      "end": 3082,
                                      "loc": {
                                        "start": {
                                          "line": 100,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 100,
                                          "column": 56
                                        }
                                      },
                                      "name": "Object3D"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3083,
                                    "end": 3089,
                                    "loc": {
                                      "start": {
                                        "line": 100,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 100,
                                        "column": 63
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3090,
                                  "end": 3099,
                                  "loc": {
                                    "start": {
                                      "line": 100,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 100,
                                      "column": 73
                                    }
                                  },
                                  "name": "Lifecycle"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3100,
                                "end": 3109,
                                "loc": {
                                  "start": {
                                    "line": 100,
                                    "column": 74
                                  },
                                  "end": {
                                    "line": 100,
                                    "column": 83
                                  }
                                },
                                "name": "ViewFound"
                              },
                              "computed": false
                            },
                            {
                              "type": "Identifier",
                              "start": 3111,
                              "end": 3118,
                              "loc": {
                                "start": {
                                  "line": 100,
                                  "column": 85
                                },
                                "end": {
                                  "line": 100,
                                  "column": 92
                                }
                              },
                              "name": "resolve"
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 3125,
      "end": 3833,
      "loc": {
        "start": {
          "line": 103,
          "column": 0
        },
        "end": {
          "line": 127,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 3125,
        "end": 3833,
        "loc": {
          "start": {
            "line": 103,
            "column": 0
          },
          "end": {
            "line": 127,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 3125,
          "end": 3167,
          "loc": {
            "start": {
              "line": 103,
              "column": 0
            },
            "end": {
              "line": 103,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 3125,
            "end": 3149,
            "loc": {
              "start": {
                "line": 103,
                "column": 0
              },
              "end": {
                "line": 103,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 3125,
              "end": 3139,
              "loc": {
                "start": {
                  "line": 103,
                  "column": 0
                },
                "end": {
                  "line": 103,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 3125,
                "end": 3130,
                "loc": {
                  "start": {
                    "line": 103,
                    "column": 0
                  },
                  "end": {
                    "line": 103,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 3131,
                "end": 3139,
                "loc": {
                  "start": {
                    "line": 103,
                    "column": 6
                  },
                  "end": {
                    "line": 103,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 3140,
              "end": 3149,
              "loc": {
                "start": {
                  "line": 103,
                  "column": 15
                },
                "end": {
                  "line": 103,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 3150,
            "end": 3167,
            "loc": {
              "start": {
                "line": 103,
                "column": 25
              },
              "end": {
                "line": 103,
                "column": 42
              }
            },
            "name": "_destroyRecursive"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 3170,
          "end": 3833,
          "loc": {
            "start": {
              "line": 103,
              "column": 45
            },
            "end": {
              "line": 127,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 3150,
            "end": 3167,
            "loc": {
              "start": {
                "line": 103,
                "column": 25
              },
              "end": {
                "line": 103,
                "column": 42
              }
            },
            "name": "_destroyRecursive"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 3179,
              "end": 3186,
              "loc": {
                "start": {
                  "line": 103,
                  "column": 54
                },
                "end": {
                  "line": 103,
                  "column": 61
                }
              },
              "name": "options"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 3188,
            "end": 3833,
            "loc": {
              "start": {
                "line": 103,
                "column": 63
              },
              "end": {
                "line": 127,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 3194,
                "end": 3247,
                "loc": {
                  "start": {
                    "line": 104,
                    "column": 4
                  },
                  "end": {
                    "line": 105,
                    "column": 32
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3198,
                  "end": 3213,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 8
                    },
                    "end": {
                      "line": 104,
                      "column": 23
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 3199,
                    "end": 3213,
                    "loc": {
                      "start": {
                        "line": 104,
                        "column": 9
                      },
                      "end": {
                        "line": 104,
                        "column": 23
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 3200,
                      "end": 3213,
                      "loc": {
                        "start": {
                          "line": 104,
                          "column": 10
                        },
                        "end": {
                          "line": 104,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3200,
                        "end": 3204,
                        "loc": {
                          "start": {
                            "line": 104,
                            "column": 10
                          },
                          "end": {
                            "line": 104,
                            "column": 14
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3205,
                        "end": 3213,
                        "loc": {
                          "start": {
                            "line": 104,
                            "column": 15
                          },
                          "end": {
                            "line": 104,
                            "column": 23
                          }
                        },
                        "name": "geometry"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 3223,
                  "end": 3247,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 8
                    },
                    "end": {
                      "line": 105,
                      "column": 32
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 3223,
                    "end": 3246,
                    "loc": {
                      "start": {
                        "line": 105,
                        "column": 8
                      },
                      "end": {
                        "line": 105,
                        "column": 31
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 3223,
                      "end": 3244,
                      "loc": {
                        "start": {
                          "line": 105,
                          "column": 8
                        },
                        "end": {
                          "line": 105,
                          "column": 29
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 3223,
                        "end": 3236,
                        "loc": {
                          "start": {
                            "line": 105,
                            "column": 8
                          },
                          "end": {
                            "line": 105,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 3223,
                          "end": 3227,
                          "loc": {
                            "start": {
                              "line": 105,
                              "column": 8
                            },
                            "end": {
                              "line": 105,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3228,
                          "end": 3236,
                          "loc": {
                            "start": {
                              "line": 105,
                              "column": 13
                            },
                            "end": {
                              "line": 105,
                              "column": 21
                            }
                          },
                          "name": "geometry"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3237,
                        "end": 3244,
                        "loc": {
                          "start": {
                            "line": 105,
                            "column": 22
                          },
                          "end": {
                            "line": 105,
                            "column": 29
                          }
                        },
                        "name": "dispose"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 3253,
                "end": 3306,
                "loc": {
                  "start": {
                    "line": 107,
                    "column": 4
                  },
                  "end": {
                    "line": 108,
                    "column": 32
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3257,
                  "end": 3272,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 8
                    },
                    "end": {
                      "line": 107,
                      "column": 23
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 3258,
                    "end": 3272,
                    "loc": {
                      "start": {
                        "line": 107,
                        "column": 9
                      },
                      "end": {
                        "line": 107,
                        "column": 23
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 3259,
                      "end": 3272,
                      "loc": {
                        "start": {
                          "line": 107,
                          "column": 10
                        },
                        "end": {
                          "line": 107,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3259,
                        "end": 3263,
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 10
                          },
                          "end": {
                            "line": 107,
                            "column": 14
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3264,
                        "end": 3272,
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 15
                          },
                          "end": {
                            "line": 107,
                            "column": 23
                          }
                        },
                        "name": "material"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 3282,
                  "end": 3306,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 8
                    },
                    "end": {
                      "line": 108,
                      "column": 32
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 3282,
                    "end": 3305,
                    "loc": {
                      "start": {
                        "line": 108,
                        "column": 8
                      },
                      "end": {
                        "line": 108,
                        "column": 31
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 3282,
                      "end": 3303,
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 8
                        },
                        "end": {
                          "line": 108,
                          "column": 29
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 3282,
                        "end": 3295,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 8
                          },
                          "end": {
                            "line": 108,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 3282,
                          "end": 3286,
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 8
                            },
                            "end": {
                              "line": 108,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3287,
                          "end": 3295,
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 13
                            },
                            "end": {
                              "line": 108,
                              "column": 21
                            }
                          },
                          "name": "material"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3296,
                        "end": 3303,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 22
                          },
                          "end": {
                            "line": 108,
                            "column": 29
                          }
                        },
                        "name": "dispose"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 3312,
                "end": 3546,
                "loc": {
                  "start": {
                    "line": 110,
                    "column": 4
                  },
                  "end": {
                    "line": 116,
                    "column": 5
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3316,
                  "end": 3332,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 8
                    },
                    "end": {
                      "line": 110,
                      "column": 24
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "UnaryExpression",
                    "start": 3317,
                    "end": 3332,
                    "loc": {
                      "start": {
                        "line": 110,
                        "column": 9
                      },
                      "end": {
                        "line": 110,
                        "column": 24
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 3318,
                      "end": 3332,
                      "loc": {
                        "start": {
                          "line": 110,
                          "column": 10
                        },
                        "end": {
                          "line": 110,
                          "column": 24
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3318,
                        "end": 3322,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 10
                          },
                          "end": {
                            "line": 110,
                            "column": 14
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3323,
                        "end": 3332,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 15
                          },
                          "end": {
                            "line": 110,
                            "column": 24
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 3334,
                  "end": 3546,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 26
                    },
                    "end": {
                      "line": 116,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 3344,
                      "end": 3403,
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 8
                        },
                        "end": {
                          "line": 111,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3344,
                        "end": 3402,
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 8
                          },
                          "end": {
                            "line": 111,
                            "column": 66
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3344,
                          "end": 3370,
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 8
                            },
                            "end": {
                              "line": 111,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3344,
                            "end": 3362,
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 8
                              },
                              "end": {
                                "line": 111,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 3344,
                              "end": 3358,
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 8
                                },
                                "end": {
                                  "line": 111,
                                  "column": 22
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3344,
                                "end": 3348,
                                "loc": {
                                  "start": {
                                    "line": 111,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 111,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3349,
                                "end": 3358,
                                "loc": {
                                  "start": {
                                    "line": 111,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 111,
                                    "column": 22
                                  }
                                },
                                "name": "materials"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3359,
                              "end": 3362,
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 23
                                },
                                "end": {
                                  "line": 111,
                                  "column": 26
                                }
                              },
                              "name": "all"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3363,
                            "end": 3370,
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 27
                              },
                              "end": {
                                "line": 111,
                                "column": 34
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 3371,
                            "end": 3401,
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 35
                              },
                              "end": {
                                "line": 111,
                                "column": 65
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 3371,
                                "end": 3379,
                                "loc": {
                                  "start": {
                                    "line": 111,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 111,
                                    "column": 43
                                  }
                                },
                                "name": "material"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 3383,
                              "end": 3401,
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 47
                                },
                                "end": {
                                  "line": 111,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3383,
                                "end": 3399,
                                "loc": {
                                  "start": {
                                    "line": 111,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 111,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3383,
                                  "end": 3391,
                                  "loc": {
                                    "start": {
                                      "line": 111,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 111,
                                      "column": 55
                                    }
                                  },
                                  "name": "material"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3392,
                                  "end": 3399,
                                  "loc": {
                                    "start": {
                                      "line": 111,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 111,
                                      "column": 63
                                    }
                                  },
                                  "name": "dispose"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3412,
                      "end": 3436,
                      "loc": {
                        "start": {
                          "line": 112,
                          "column": 8
                        },
                        "end": {
                          "line": 112,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3412,
                        "end": 3435,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 8
                          },
                          "end": {
                            "line": 112,
                            "column": 31
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3412,
                          "end": 3430,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 8
                            },
                            "end": {
                              "line": 112,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3412,
                            "end": 3426,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 8
                              },
                              "end": {
                                "line": 112,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3412,
                              "end": 3416,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 8
                                },
                                "end": {
                                  "line": 112,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3417,
                              "end": 3426,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 13
                                },
                                "end": {
                                  "line": 112,
                                  "column": 22
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3427,
                            "end": 3430,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 23
                              },
                              "end": {
                                "line": 112,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 3433,
                          "end": 3435,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 29
                            },
                            "end": {
                              "line": 112,
                              "column": 31
                            }
                          },
                          "elements": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3445,
                      "end": 3472,
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 8
                        },
                        "end": {
                          "line": 113,
                          "column": 35
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3445,
                        "end": 3471,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 8
                          },
                          "end": {
                            "line": 113,
                            "column": 34
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3445,
                          "end": 3466,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 8
                            },
                            "end": {
                              "line": 113,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3445,
                            "end": 3459,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 8
                              },
                              "end": {
                                "line": 113,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3445,
                              "end": 3449,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 8
                                },
                                "end": {
                                  "line": 113,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3450,
                              "end": 3459,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 13
                                },
                                "end": {
                                  "line": 113,
                                  "column": 22
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3460,
                            "end": 3466,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 23
                              },
                              "end": {
                                "line": 113,
                                "column": 29
                              }
                            },
                            "name": "meshes"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 3469,
                          "end": 3471,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 32
                            },
                            "end": {
                              "line": 113,
                              "column": 34
                            }
                          },
                          "elements": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3481,
                      "end": 3507,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 8
                        },
                        "end": {
                          "line": 114,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3481,
                        "end": 3506,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 8
                          },
                          "end": {
                            "line": 114,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3481,
                          "end": 3501,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 8
                            },
                            "end": {
                              "line": 114,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3481,
                            "end": 3495,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 8
                              },
                              "end": {
                                "line": 114,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3481,
                              "end": 3485,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 8
                                },
                                "end": {
                                  "line": 114,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3486,
                              "end": 3495,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 13
                                },
                                "end": {
                                  "line": 114,
                                  "column": 22
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3496,
                            "end": 3501,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 23
                              },
                              "end": {
                                "line": 114,
                                "column": 28
                              }
                            },
                            "name": "lines"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 3504,
                          "end": 3506,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 31
                            },
                            "end": {
                              "line": 114,
                              "column": 33
                            }
                          },
                          "elements": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3516,
                      "end": 3540,
                      "loc": {
                        "start": {
                          "line": 115,
                          "column": 8
                        },
                        "end": {
                          "line": 115,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3516,
                        "end": 3539,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 8
                          },
                          "end": {
                            "line": 115,
                            "column": 31
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3516,
                          "end": 3527,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 8
                            },
                            "end": {
                              "line": 115,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3516,
                            "end": 3520,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 8
                              },
                              "end": {
                                "line": 115,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3521,
                            "end": 3527,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 13
                              },
                              "end": {
                                "line": 115,
                                "column": 19
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 3530,
                          "end": 3539,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 22
                            },
                            "end": {
                              "line": 115,
                              "column": 31
                            }
                          },
                          "name": "undefined"
                        }
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 3552,
                "end": 3571,
                "loc": {
                  "start": {
                    "line": 118,
                    "column": 4
                  },
                  "end": {
                    "line": 118,
                    "column": 23
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 3552,
                  "end": 3570,
                  "loc": {
                    "start": {
                      "line": 118,
                      "column": 4
                    },
                    "end": {
                      "line": 118,
                      "column": 22
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 3552,
                    "end": 3565,
                    "loc": {
                      "start": {
                        "line": 118,
                        "column": 4
                      },
                      "end": {
                        "line": 118,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 3552,
                      "end": 3556,
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 4
                        },
                        "end": {
                          "line": 118,
                          "column": 8
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 3557,
                      "end": 3565,
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 9
                        },
                        "end": {
                          "line": 118,
                          "column": 17
                        }
                      },
                      "name": "userData"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 3568,
                    "end": 3570,
                    "loc": {
                      "start": {
                        "line": 118,
                        "column": 20
                      },
                      "end": {
                        "line": 118,
                        "column": 22
                      }
                    },
                    "properties": []
                  }
                },
                "trailingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Remove children",
                    "start": 3577,
                    "end": 3595,
                    "loc": {
                      "start": {
                        "line": 120,
                        "column": 4
                      },
                      "end": {
                        "line": 120,
                        "column": 22
                      }
                    },
                    "range": [
                      3577,
                      3595
                    ]
                  }
                ]
              },
              {
                "type": "IfStatement",
                "start": 3600,
                "end": 3831,
                "loc": {
                  "start": {
                    "line": 121,
                    "column": 4
                  },
                  "end": {
                    "line": 126,
                    "column": 5
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 3604,
                  "end": 3618,
                  "loc": {
                    "start": {
                      "line": 121,
                      "column": 8
                    },
                    "end": {
                      "line": 121,
                      "column": 22
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "MemberExpression",
                    "start": 3605,
                    "end": 3618,
                    "loc": {
                      "start": {
                        "line": 121,
                        "column": 9
                      },
                      "end": {
                        "line": 121,
                        "column": 22
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 3605,
                      "end": 3612,
                      "loc": {
                        "start": {
                          "line": 121,
                          "column": 9
                        },
                        "end": {
                          "line": 121,
                          "column": 16
                        }
                      },
                      "name": "options",
                      "leadingComments": null
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 3613,
                      "end": 3618,
                      "loc": {
                        "start": {
                          "line": 121,
                          "column": 17
                        },
                        "end": {
                          "line": 121,
                          "column": 22
                        }
                      },
                      "name": "async"
                    },
                    "computed": false,
                    "leadingComments": null
                  },
                  "leadingComments": null
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 3620,
                  "end": 3734,
                  "loc": {
                    "start": {
                      "line": 121,
                      "column": 24
                    },
                    "end": {
                      "line": 124,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ForStatement",
                      "start": 3630,
                      "end": 3728,
                      "loc": {
                        "start": {
                          "line": 122,
                          "column": 8
                        },
                        "end": {
                          "line": 123,
                          "column": 46
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 3635,
                        "end": 3667,
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 13
                          },
                          "end": {
                            "line": 122,
                            "column": 45
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 3639,
                            "end": 3667,
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 17
                              },
                              "end": {
                                "line": 122,
                                "column": 45
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 3639,
                              "end": 3640,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 17
                                },
                                "end": {
                                  "line": 122,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "BinaryExpression",
                              "start": 3643,
                              "end": 3667,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 21
                                },
                                "end": {
                                  "line": 122,
                                  "column": 45
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 3643,
                                "end": 3663,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3643,
                                  "end": 3656,
                                  "loc": {
                                    "start": {
                                      "line": 122,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 122,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3643,
                                    "end": 3647,
                                    "loc": {
                                      "start": {
                                        "line": 122,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 122,
                                        "column": 25
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3648,
                                    "end": 3656,
                                    "loc": {
                                      "start": {
                                        "line": 122,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 122,
                                        "column": 34
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3657,
                                  "end": 3663,
                                  "loc": {
                                    "start": {
                                      "line": 122,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 122,
                                      "column": 41
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "operator": "-",
                              "right": {
                                "type": "Literal",
                                "start": 3666,
                                "end": 3667,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 45
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              }
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 3669,
                        "end": 3675,
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 47
                          },
                          "end": {
                            "line": 122,
                            "column": 53
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 3669,
                          "end": 3670,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 47
                            },
                            "end": {
                              "line": 122,
                              "column": 48
                            }
                          },
                          "name": "i"
                        },
                        "operator": ">=",
                        "right": {
                          "type": "Literal",
                          "start": 3674,
                          "end": 3675,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 52
                            },
                            "end": {
                              "line": 122,
                              "column": 53
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 3677,
                        "end": 3680,
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 55
                          },
                          "end": {
                            "line": 122,
                            "column": 58
                          }
                        },
                        "operator": "--",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 3677,
                          "end": 3678,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 55
                            },
                            "end": {
                              "line": 122,
                              "column": 56
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 3694,
                        "end": 3728,
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 12
                          },
                          "end": {
                            "line": 123,
                            "column": 46
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 3694,
                          "end": 3727,
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 12
                            },
                            "end": {
                              "line": 123,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3694,
                            "end": 3718,
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 12
                              },
                              "end": {
                                "line": 123,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 3694,
                              "end": 3710,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 12
                                },
                                "end": {
                                  "line": 123,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3694,
                                "end": 3707,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 123,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3694,
                                  "end": 3698,
                                  "loc": {
                                    "start": {
                                      "line": 123,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 123,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3699,
                                  "end": 3707,
                                  "loc": {
                                    "start": {
                                      "line": 123,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 123,
                                      "column": 25
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3708,
                                "end": 3709,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 123,
                                    "column": 27
                                  }
                                },
                                "name": "i"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3711,
                              "end": 3718,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 29
                                },
                                "end": {
                                  "line": 123,
                                  "column": 36
                                }
                              },
                              "name": "destroy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 3719,
                              "end": 3726,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 37
                                },
                                "end": {
                                  "line": 123,
                                  "column": 44
                                }
                              },
                              "name": "options"
                            }
                          ]
                        }
                      }
                    }
                  ]
                },
                "alternate": {
                  "type": "BlockStatement",
                  "start": 3740,
                  "end": 3831,
                  "loc": {
                    "start": {
                      "line": 124,
                      "column": 11
                    },
                    "end": {
                      "line": 126,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 3750,
                      "end": 3825,
                      "loc": {
                        "start": {
                          "line": 125,
                          "column": 8
                        },
                        "end": {
                          "line": 125,
                          "column": 83
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 3757,
                        "end": 3825,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 15
                          },
                          "end": {
                            "line": 125,
                            "column": 83
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3757,
                          "end": 3768,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 15
                            },
                            "end": {
                              "line": 125,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 3757,
                            "end": 3764,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 15
                              },
                              "end": {
                                "line": 125,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3765,
                            "end": 3768,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 23
                              },
                              "end": {
                                "line": 125,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 3769,
                            "end": 3824,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 27
                              },
                              "end": {
                                "line": 125,
                                "column": 82
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3769,
                              "end": 3786,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 27
                                },
                                "end": {
                                  "line": 125,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3769,
                                "end": 3782,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 40
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3769,
                                  "end": 3773,
                                  "loc": {
                                    "start": {
                                      "line": 125,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 125,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3774,
                                  "end": 3782,
                                  "loc": {
                                    "start": {
                                      "line": 125,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 125,
                                      "column": 40
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3783,
                                "end": 3786,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 44
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 3787,
                                "end": 3823,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 81
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 3787,
                                    "end": 3792,
                                    "loc": {
                                      "start": {
                                        "line": 125,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 125,
                                        "column": 50
                                      }
                                    },
                                    "name": "child"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 3796,
                                  "end": 3823,
                                  "loc": {
                                    "start": {
                                      "line": 125,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 125,
                                      "column": 81
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 3796,
                                    "end": 3814,
                                    "loc": {
                                      "start": {
                                        "line": 125,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 125,
                                        "column": 72
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 3796,
                                      "end": 3801,
                                      "loc": {
                                        "start": {
                                          "line": 125,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 125,
                                          "column": 59
                                        }
                                      },
                                      "name": "child"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3802,
                                      "end": 3814,
                                      "loc": {
                                        "start": {
                                          "line": 125,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 125,
                                          "column": 72
                                        }
                                      },
                                      "name": "destroyAsync"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 3815,
                                      "end": 3822,
                                      "loc": {
                                        "start": {
                                          "line": 125,
                                          "column": 73
                                        },
                                        "end": {
                                          "line": 125,
                                          "column": 80
                                        }
                                      },
                                      "name": "options"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "leadingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Remove children",
                    "start": 3577,
                    "end": 3595,
                    "loc": {
                      "start": {
                        "line": 120,
                        "column": 4
                      },
                      "end": {
                        "line": 120,
                        "column": 22
                      }
                    },
                    "range": [
                      3577,
                      3595
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 3835,
      "end": 4325,
      "loc": {
        "start": {
          "line": 129,
          "column": 0
        },
        "end": {
          "line": 137,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 3835,
        "end": 4325,
        "loc": {
          "start": {
            "line": 129,
            "column": 0
          },
          "end": {
            "line": 137,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 3835,
          "end": 3872,
          "loc": {
            "start": {
              "line": 129,
              "column": 0
            },
            "end": {
              "line": 129,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 3835,
            "end": 3859,
            "loc": {
              "start": {
                "line": 129,
                "column": 0
              },
              "end": {
                "line": 129,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 3835,
              "end": 3849,
              "loc": {
                "start": {
                  "line": 129,
                  "column": 0
                },
                "end": {
                  "line": 129,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 3835,
                "end": 3840,
                "loc": {
                  "start": {
                    "line": 129,
                    "column": 0
                  },
                  "end": {
                    "line": 129,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 3841,
                "end": 3849,
                "loc": {
                  "start": {
                    "line": 129,
                    "column": 6
                  },
                  "end": {
                    "line": 129,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 3850,
              "end": 3859,
              "loc": {
                "start": {
                  "line": 129,
                  "column": 15
                },
                "end": {
                  "line": 129,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 3860,
            "end": 3872,
            "loc": {
              "start": {
                "line": 129,
                "column": 25
              },
              "end": {
                "line": 129,
                "column": 37
              }
            },
            "name": "destroyAsync"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 3875,
          "end": 4325,
          "loc": {
            "start": {
              "line": 129,
              "column": 40
            },
            "end": {
              "line": 137,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 3860,
            "end": 3872,
            "loc": {
              "start": {
                "line": 129,
                "column": 25
              },
              "end": {
                "line": 129,
                "column": 37
              }
            },
            "name": "destroyAsync"
          },
          "generator": false,
          "expression": false,
          "async": true,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 3890,
              "end": 3902,
              "loc": {
                "start": {
                  "line": 129,
                  "column": 55
                },
                "end": {
                  "line": 129,
                  "column": 67
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 3890,
                "end": 3897,
                "loc": {
                  "start": {
                    "line": 129,
                    "column": 55
                  },
                  "end": {
                    "line": 129,
                    "column": 62
                  }
                },
                "name": "options"
              },
              "right": {
                "type": "ObjectExpression",
                "start": 3900,
                "end": 3902,
                "loc": {
                  "start": {
                    "line": 129,
                    "column": 65
                  },
                  "end": {
                    "line": 129,
                    "column": 67
                  }
                },
                "properties": []
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 3904,
            "end": 4325,
            "loc": {
              "start": {
                "line": 129,
                "column": 69
              },
              "end": {
                "line": 137,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 3910,
                "end": 3995,
                "loc": {
                  "start": {
                    "line": 130,
                    "column": 4
                  },
                  "end": {
                    "line": 130,
                    "column": 89
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 3910,
                  "end": 3994,
                  "loc": {
                    "start": {
                      "line": 130,
                      "column": 4
                    },
                    "end": {
                      "line": 130,
                      "column": 88
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 3910,
                    "end": 3917,
                    "loc": {
                      "start": {
                        "line": 130,
                        "column": 4
                      },
                      "end": {
                        "line": 130,
                        "column": 11
                      }
                    },
                    "name": "options"
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 3920,
                    "end": 3994,
                    "loc": {
                      "start": {
                        "line": 130,
                        "column": 14
                      },
                      "end": {
                        "line": 130,
                        "column": 88
                      }
                    },
                    "properties": [
                      {
                        "type": "Property",
                        "start": 3922,
                        "end": 3932,
                        "loc": {
                          "start": {
                            "line": 130,
                            "column": 16
                          },
                          "end": {
                            "line": 130,
                            "column": 26
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 3922,
                          "end": 3926,
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 16
                            },
                            "end": {
                              "line": 130,
                              "column": 20
                            }
                          },
                          "name": "keep"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 3928,
                          "end": 3932,
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 22
                            },
                            "end": {
                              "line": 130,
                              "column": 26
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 3934,
                        "end": 3944,
                        "loc": {
                          "start": {
                            "line": 130,
                            "column": 28
                          },
                          "end": {
                            "line": 130,
                            "column": 38
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 3934,
                          "end": 3938,
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 28
                            },
                            "end": {
                              "line": 130,
                              "column": 32
                            }
                          },
                          "name": "data"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 3940,
                          "end": 3944,
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 34
                            },
                            "end": {
                              "line": 130,
                              "column": 38
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 3946,
                        "end": 3963,
                        "loc": {
                          "start": {
                            "line": 130,
                            "column": 40
                          },
                          "end": {
                            "line": 130,
                            "column": 57
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 3946,
                          "end": 3957,
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 40
                            },
                            "end": {
                              "line": 130,
                              "column": 51
                            }
                          },
                          "name": "interaction"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 3959,
                          "end": 3963,
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 53
                            },
                            "end": {
                              "line": 130,
                              "column": 57
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 3965,
                        "end": 3980,
                        "loc": {
                          "start": {
                            "line": 130,
                            "column": 59
                          },
                          "end": {
                            "line": 130,
                            "column": 74
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 3965,
                          "end": 3974,
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 59
                            },
                            "end": {
                              "line": 130,
                              "column": 68
                            }
                          },
                          "name": "listeners"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 3976,
                          "end": 3980,
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 70
                            },
                            "end": {
                              "line": 130,
                              "column": 74
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "SpreadProperty",
                        "start": 3982,
                        "end": 3992,
                        "loc": {
                          "start": {
                            "line": 130,
                            "column": 76
                          },
                          "end": {
                            "line": 130,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 3985,
                          "end": 3992,
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 79
                            },
                            "end": {
                              "line": 130,
                              "column": 86
                            }
                          },
                          "name": "options"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 3997,
                "end": 4035,
                "loc": {
                  "start": {
                    "line": 131,
                    "column": 1
                  },
                  "end": {
                    "line": 131,
                    "column": 39
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 4001,
                  "end": 4026,
                  "loc": {
                    "start": {
                      "line": 131,
                      "column": 5
                    },
                    "end": {
                      "line": 131,
                      "column": 30
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4001,
                    "end": 4013,
                    "loc": {
                      "start": {
                        "line": 131,
                        "column": 5
                      },
                      "end": {
                        "line": 131,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4001,
                      "end": 4008,
                      "loc": {
                        "start": {
                          "line": 131,
                          "column": 5
                        },
                        "end": {
                          "line": 131,
                          "column": 12
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4009,
                      "end": 4013,
                      "loc": {
                        "start": {
                          "line": 131,
                          "column": 13
                        },
                        "end": {
                          "line": 131,
                          "column": 17
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "MemberExpression",
                    "start": 4017,
                    "end": 4026,
                    "loc": {
                      "start": {
                        "line": 131,
                        "column": 21
                      },
                      "end": {
                        "line": 131,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4017,
                      "end": 4021,
                      "loc": {
                        "start": {
                          "line": 131,
                          "column": 21
                        },
                        "end": {
                          "line": 131,
                          "column": 25
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4022,
                      "end": 4026,
                      "loc": {
                        "start": {
                          "line": 131,
                          "column": 26
                        },
                        "end": {
                          "line": 131,
                          "column": 30
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 4028,
                  "end": 4035,
                  "loc": {
                    "start": {
                      "line": 131,
                      "column": 32
                    },
                    "end": {
                      "line": 131,
                      "column": 39
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 4040,
                "end": 4088,
                "loc": {
                  "start": {
                    "line": 132,
                    "column": 4
                  },
                  "end": {
                    "line": 132,
                    "column": 52
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4040,
                  "end": 4087,
                  "loc": {
                    "start": {
                      "line": 132,
                      "column": 4
                    },
                    "end": {
                      "line": 132,
                      "column": 51
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4040,
                    "end": 4059,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 4
                      },
                      "end": {
                        "line": 132,
                        "column": 23
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4040,
                      "end": 4047,
                      "loc": {
                        "start": {
                          "line": 132,
                          "column": 4
                        },
                        "end": {
                          "line": 132,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4048,
                      "end": 4059,
                      "loc": {
                        "start": {
                          "line": 132,
                          "column": 12
                        },
                        "end": {
                          "line": 132,
                          "column": 23
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4063,
                    "end": 4087,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 27
                      },
                      "end": {
                        "line": 132,
                        "column": 51
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4063,
                      "end": 4085,
                      "loc": {
                        "start": {
                          "line": 132,
                          "column": 27
                        },
                        "end": {
                          "line": 132,
                          "column": 49
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4063,
                        "end": 4067,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 27
                          },
                          "end": {
                            "line": 132,
                            "column": 31
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4068,
                        "end": 4085,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 32
                          },
                          "end": {
                            "line": 132,
                            "column": 49
                          }
                        },
                        "name": "removeInteraction"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4090,
                "end": 4142,
                "loc": {
                  "start": {
                    "line": 133,
                    "column": 1
                  },
                  "end": {
                    "line": 133,
                    "column": 53
                  }
                },
                "expression": {
                  "type": "AwaitExpression",
                  "start": 4090,
                  "end": 4141,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 1
                    },
                    "end": {
                      "line": 133,
                      "column": 52
                    }
                  },
                  "all": false,
                  "argument": {
                    "type": "CallExpression",
                    "start": 4096,
                    "end": 4141,
                    "loc": {
                      "start": {
                        "line": 133,
                        "column": 7
                      },
                      "end": {
                        "line": 133,
                        "column": 52
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4096,
                      "end": 4105,
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 7
                        },
                        "end": {
                          "line": 133,
                          "column": 16
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4096,
                        "end": 4100,
                        "loc": {
                          "start": {
                            "line": 133,
                            "column": 7
                          },
                          "end": {
                            "line": 133,
                            "column": 11
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4101,
                        "end": 4105,
                        "loc": {
                          "start": {
                            "line": 133,
                            "column": 12
                          },
                          "end": {
                            "line": 133,
                            "column": 16
                          }
                        },
                        "name": "emit"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "MemberExpression",
                        "start": 4106,
                        "end": 4140,
                        "loc": {
                          "start": {
                            "line": 133,
                            "column": 17
                          },
                          "end": {
                            "line": 133,
                            "column": 51
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4106,
                          "end": 4130,
                          "loc": {
                            "start": {
                              "line": 133,
                              "column": 17
                            },
                            "end": {
                              "line": 133,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4106,
                            "end": 4120,
                            "loc": {
                              "start": {
                                "line": 133,
                                "column": 17
                              },
                              "end": {
                                "line": 133,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 4106,
                              "end": 4113,
                              "loc": {
                                "start": {
                                  "line": 133,
                                  "column": 17
                                },
                                "end": {
                                  "line": 133,
                                  "column": 24
                                }
                              },
                              "name": "Object3"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4114,
                              "end": 4120,
                              "loc": {
                                "start": {
                                  "line": 133,
                                  "column": 25
                                },
                                "end": {
                                  "line": 133,
                                  "column": 31
                                }
                              },
                              "name": "Events"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4121,
                            "end": 4130,
                            "loc": {
                              "start": {
                                "line": 133,
                                "column": 32
                              },
                              "end": {
                                "line": 133,
                                "column": 41
                              }
                            },
                            "name": "Lifecycle"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4131,
                          "end": 4140,
                          "loc": {
                            "start": {
                              "line": 133,
                              "column": 42
                            },
                            "end": {
                              "line": 133,
                              "column": 51
                            }
                          },
                          "name": "Destroyed"
                        },
                        "computed": false
                      }
                    ]
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4144,
                "end": 4195,
                "loc": {
                  "start": {
                    "line": 134,
                    "column": 1
                  },
                  "end": {
                    "line": 134,
                    "column": 52
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4144,
                  "end": 4194,
                  "loc": {
                    "start": {
                      "line": 134,
                      "column": 1
                    },
                    "end": {
                      "line": 134,
                      "column": 51
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4144,
                    "end": 4155,
                    "loc": {
                      "start": {
                        "line": 134,
                        "column": 1
                      },
                      "end": {
                        "line": 134,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4144,
                      "end": 4148,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 1
                        },
                        "end": {
                          "line": 134,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4149,
                      "end": 4155,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 6
                        },
                        "end": {
                          "line": 134,
                          "column": 12
                        }
                      },
                      "name": "parent"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "AwaitExpression",
                    "start": 4159,
                    "end": 4194,
                    "loc": {
                      "start": {
                        "line": 134,
                        "column": 16
                      },
                      "end": {
                        "line": 134,
                        "column": 51
                      }
                    },
                    "all": false,
                    "argument": {
                      "type": "CallExpression",
                      "start": 4165,
                      "end": 4194,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 22
                        },
                        "end": {
                          "line": 134,
                          "column": 51
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 4165,
                        "end": 4188,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 22
                          },
                          "end": {
                            "line": 134,
                            "column": 45
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4165,
                          "end": 4176,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 22
                            },
                            "end": {
                              "line": 134,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4165,
                            "end": 4169,
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 22
                              },
                              "end": {
                                "line": 134,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4170,
                            "end": 4176,
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 27
                              },
                              "end": {
                                "line": 134,
                                "column": 33
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4177,
                          "end": 4188,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 34
                            },
                            "end": {
                              "line": 134,
                              "column": 45
                            }
                          },
                          "name": "removeAsync"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 4189,
                          "end": 4193,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 46
                            },
                            "end": {
                              "line": 134,
                              "column": 50
                            }
                          }
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4200,
                "end": 4244,
                "loc": {
                  "start": {
                    "line": 135,
                    "column": 4
                  },
                  "end": {
                    "line": 135,
                    "column": 48
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4200,
                  "end": 4243,
                  "loc": {
                    "start": {
                      "line": 135,
                      "column": 4
                    },
                    "end": {
                      "line": 135,
                      "column": 47
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4200,
                    "end": 4217,
                    "loc": {
                      "start": {
                        "line": 135,
                        "column": 4
                      },
                      "end": {
                        "line": 135,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4200,
                      "end": 4207,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 4
                        },
                        "end": {
                          "line": 135,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4208,
                      "end": 4217,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 12
                        },
                        "end": {
                          "line": 135,
                          "column": 21
                        }
                      },
                      "name": "listeners"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4221,
                    "end": 4243,
                    "loc": {
                      "start": {
                        "line": 135,
                        "column": 25
                      },
                      "end": {
                        "line": 135,
                        "column": 47
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4221,
                      "end": 4241,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 25
                        },
                        "end": {
                          "line": 135,
                          "column": 45
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4221,
                        "end": 4225,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 25
                          },
                          "end": {
                            "line": 135,
                            "column": 29
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4226,
                        "end": 4241,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 30
                          },
                          "end": {
                            "line": 135,
                            "column": 45
                          }
                        },
                        "name": "removeListeners"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4249,
                "end": 4323,
                "loc": {
                  "start": {
                    "line": 136,
                    "column": 4
                  },
                  "end": {
                    "line": 136,
                    "column": 78
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4249,
                  "end": 4322,
                  "loc": {
                    "start": {
                      "line": 136,
                      "column": 4
                    },
                    "end": {
                      "line": 136,
                      "column": 77
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4249,
                    "end": 4261,
                    "loc": {
                      "start": {
                        "line": 136,
                        "column": 4
                      },
                      "end": {
                        "line": 136,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4249,
                      "end": 4256,
                      "loc": {
                        "start": {
                          "line": 136,
                          "column": 4
                        },
                        "end": {
                          "line": 136,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4257,
                      "end": 4261,
                      "loc": {
                        "start": {
                          "line": 136,
                          "column": 12
                        },
                        "end": {
                          "line": 136,
                          "column": 16
                        }
                      },
                      "name": "data"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "AwaitExpression",
                    "start": 4265,
                    "end": 4322,
                    "loc": {
                      "start": {
                        "line": 136,
                        "column": 20
                      },
                      "end": {
                        "line": 136,
                        "column": 77
                      }
                    },
                    "all": false,
                    "argument": {
                      "type": "CallExpression",
                      "start": 4271,
                      "end": 4322,
                      "loc": {
                        "start": {
                          "line": 136,
                          "column": 26
                        },
                        "end": {
                          "line": 136,
                          "column": 77
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 4271,
                        "end": 4293,
                        "loc": {
                          "start": {
                            "line": 136,
                            "column": 26
                          },
                          "end": {
                            "line": 136,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 4271,
                          "end": 4275,
                          "loc": {
                            "start": {
                              "line": 136,
                              "column": 26
                            },
                            "end": {
                              "line": 136,
                              "column": 30
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4276,
                          "end": 4293,
                          "loc": {
                            "start": {
                              "line": 136,
                              "column": 31
                            },
                            "end": {
                              "line": 136,
                              "column": 48
                            }
                          },
                          "name": "_destroyRecursive"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ObjectExpression",
                          "start": 4294,
                          "end": 4321,
                          "loc": {
                            "start": {
                              "line": 136,
                              "column": 49
                            },
                            "end": {
                              "line": 136,
                              "column": 76
                            }
                          },
                          "properties": [
                            {
                              "type": "SpreadProperty",
                              "start": 4296,
                              "end": 4306,
                              "loc": {
                                "start": {
                                  "line": 136,
                                  "column": 51
                                },
                                "end": {
                                  "line": 136,
                                  "column": 61
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 4299,
                                "end": 4306,
                                "loc": {
                                  "start": {
                                    "line": 136,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 136,
                                    "column": 61
                                  }
                                },
                                "name": "options"
                              }
                            },
                            {
                              "type": "Property",
                              "start": 4308,
                              "end": 4319,
                              "loc": {
                                "start": {
                                  "line": 136,
                                  "column": 63
                                },
                                "end": {
                                  "line": 136,
                                  "column": 74
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "key": {
                                "type": "Identifier",
                                "start": 4308,
                                "end": 4313,
                                "loc": {
                                  "start": {
                                    "line": 136,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 136,
                                    "column": 68
                                  }
                                },
                                "name": "async"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 4315,
                                "end": 4319,
                                "loc": {
                                  "start": {
                                    "line": 136,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 136,
                                    "column": 74
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      ]
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 4327,
      "end": 4760,
      "loc": {
        "start": {
          "line": 139,
          "column": 0
        },
        "end": {
          "line": 147,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 4327,
        "end": 4760,
        "loc": {
          "start": {
            "line": 139,
            "column": 0
          },
          "end": {
            "line": 147,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 4327,
          "end": 4359,
          "loc": {
            "start": {
              "line": 139,
              "column": 0
            },
            "end": {
              "line": 139,
              "column": 32
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 4327,
            "end": 4351,
            "loc": {
              "start": {
                "line": 139,
                "column": 0
              },
              "end": {
                "line": 139,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 4327,
              "end": 4341,
              "loc": {
                "start": {
                  "line": 139,
                  "column": 0
                },
                "end": {
                  "line": 139,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 4327,
                "end": 4332,
                "loc": {
                  "start": {
                    "line": 139,
                    "column": 0
                  },
                  "end": {
                    "line": 139,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 4333,
                "end": 4341,
                "loc": {
                  "start": {
                    "line": 139,
                    "column": 6
                  },
                  "end": {
                    "line": 139,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 4342,
              "end": 4351,
              "loc": {
                "start": {
                  "line": 139,
                  "column": 15
                },
                "end": {
                  "line": 139,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 4352,
            "end": 4359,
            "loc": {
              "start": {
                "line": 139,
                "column": 25
              },
              "end": {
                "line": 139,
                "column": 32
              }
            },
            "name": "destroy"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 4362,
          "end": 4760,
          "loc": {
            "start": {
              "line": 139,
              "column": 35
            },
            "end": {
              "line": 147,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 4352,
            "end": 4359,
            "loc": {
              "start": {
                "line": 139,
                "column": 25
              },
              "end": {
                "line": 139,
                "column": 32
              }
            },
            "name": "destroy"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 4371,
              "end": 4383,
              "loc": {
                "start": {
                  "line": 139,
                  "column": 44
                },
                "end": {
                  "line": 139,
                  "column": 56
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 4371,
                "end": 4378,
                "loc": {
                  "start": {
                    "line": 139,
                    "column": 44
                  },
                  "end": {
                    "line": 139,
                    "column": 51
                  }
                },
                "name": "options"
              },
              "right": {
                "type": "ObjectExpression",
                "start": 4381,
                "end": 4383,
                "loc": {
                  "start": {
                    "line": 139,
                    "column": 54
                  },
                  "end": {
                    "line": 139,
                    "column": 56
                  }
                },
                "properties": []
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 4385,
            "end": 4760,
            "loc": {
              "start": {
                "line": 139,
                "column": 58
              },
              "end": {
                "line": 147,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 4391,
                "end": 4476,
                "loc": {
                  "start": {
                    "line": 140,
                    "column": 4
                  },
                  "end": {
                    "line": 140,
                    "column": 89
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 4391,
                  "end": 4475,
                  "loc": {
                    "start": {
                      "line": 140,
                      "column": 4
                    },
                    "end": {
                      "line": 140,
                      "column": 88
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 4391,
                    "end": 4398,
                    "loc": {
                      "start": {
                        "line": 140,
                        "column": 4
                      },
                      "end": {
                        "line": 140,
                        "column": 11
                      }
                    },
                    "name": "options"
                  },
                  "right": {
                    "type": "ObjectExpression",
                    "start": 4401,
                    "end": 4475,
                    "loc": {
                      "start": {
                        "line": 140,
                        "column": 14
                      },
                      "end": {
                        "line": 140,
                        "column": 88
                      }
                    },
                    "properties": [
                      {
                        "type": "Property",
                        "start": 4403,
                        "end": 4413,
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 16
                          },
                          "end": {
                            "line": 140,
                            "column": 26
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4403,
                          "end": 4407,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 16
                            },
                            "end": {
                              "line": 140,
                              "column": 20
                            }
                          },
                          "name": "keep"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4409,
                          "end": 4413,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 22
                            },
                            "end": {
                              "line": 140,
                              "column": 26
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4415,
                        "end": 4425,
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 28
                          },
                          "end": {
                            "line": 140,
                            "column": 38
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4415,
                          "end": 4419,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 28
                            },
                            "end": {
                              "line": 140,
                              "column": 32
                            }
                          },
                          "name": "data"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4421,
                          "end": 4425,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 34
                            },
                            "end": {
                              "line": 140,
                              "column": 38
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4427,
                        "end": 4444,
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 40
                          },
                          "end": {
                            "line": 140,
                            "column": 57
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4427,
                          "end": 4438,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 40
                            },
                            "end": {
                              "line": 140,
                              "column": 51
                            }
                          },
                          "name": "interaction"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4440,
                          "end": 4444,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 53
                            },
                            "end": {
                              "line": 140,
                              "column": 57
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "Property",
                        "start": 4446,
                        "end": 4461,
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 59
                          },
                          "end": {
                            "line": 140,
                            "column": 74
                          }
                        },
                        "method": false,
                        "shorthand": false,
                        "computed": false,
                        "key": {
                          "type": "Identifier",
                          "start": 4446,
                          "end": 4455,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 59
                            },
                            "end": {
                              "line": 140,
                              "column": 68
                            }
                          },
                          "name": "listeners"
                        },
                        "value": {
                          "type": "Literal",
                          "start": 4457,
                          "end": 4461,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 70
                            },
                            "end": {
                              "line": 140,
                              "column": 74
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "kind": "init"
                      },
                      {
                        "type": "SpreadProperty",
                        "start": 4463,
                        "end": 4473,
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 76
                          },
                          "end": {
                            "line": 140,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 4466,
                          "end": 4473,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 79
                            },
                            "end": {
                              "line": 140,
                              "column": 86
                            }
                          },
                          "name": "options"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 4478,
                "end": 4516,
                "loc": {
                  "start": {
                    "line": 141,
                    "column": 1
                  },
                  "end": {
                    "line": 141,
                    "column": 39
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 4482,
                  "end": 4507,
                  "loc": {
                    "start": {
                      "line": 141,
                      "column": 5
                    },
                    "end": {
                      "line": 141,
                      "column": 30
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4482,
                    "end": 4494,
                    "loc": {
                      "start": {
                        "line": 141,
                        "column": 5
                      },
                      "end": {
                        "line": 141,
                        "column": 17
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4482,
                      "end": 4489,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 5
                        },
                        "end": {
                          "line": 141,
                          "column": 12
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4490,
                      "end": 4494,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 13
                        },
                        "end": {
                          "line": 141,
                          "column": 17
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "MemberExpression",
                    "start": 4498,
                    "end": 4507,
                    "loc": {
                      "start": {
                        "line": 141,
                        "column": 21
                      },
                      "end": {
                        "line": 141,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4498,
                      "end": 4502,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 21
                        },
                        "end": {
                          "line": 141,
                          "column": 25
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4503,
                      "end": 4507,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 26
                        },
                        "end": {
                          "line": 141,
                          "column": 30
                        }
                      },
                      "name": "keep"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 4509,
                  "end": 4516,
                  "loc": {
                    "start": {
                      "line": 141,
                      "column": 32
                    },
                    "end": {
                      "line": 141,
                      "column": 39
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 4518,
                "end": 4564,
                "loc": {
                  "start": {
                    "line": 142,
                    "column": 1
                  },
                  "end": {
                    "line": 142,
                    "column": 47
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 4518,
                  "end": 4563,
                  "loc": {
                    "start": {
                      "line": 142,
                      "column": 1
                    },
                    "end": {
                      "line": 142,
                      "column": 46
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 4518,
                    "end": 4527,
                    "loc": {
                      "start": {
                        "line": 142,
                        "column": 1
                      },
                      "end": {
                        "line": 142,
                        "column": 10
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4518,
                      "end": 4522,
                      "loc": {
                        "start": {
                          "line": 142,
                          "column": 1
                        },
                        "end": {
                          "line": 142,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4523,
                      "end": 4527,
                      "loc": {
                        "start": {
                          "line": 142,
                          "column": 6
                        },
                        "end": {
                          "line": 142,
                          "column": 10
                        }
                      },
                      "name": "emit"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "MemberExpression",
                      "start": 4528,
                      "end": 4562,
                      "loc": {
                        "start": {
                          "line": 142,
                          "column": 11
                        },
                        "end": {
                          "line": 142,
                          "column": 45
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 4528,
                        "end": 4552,
                        "loc": {
                          "start": {
                            "line": 142,
                            "column": 11
                          },
                          "end": {
                            "line": 142,
                            "column": 35
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4528,
                          "end": 4542,
                          "loc": {
                            "start": {
                              "line": 142,
                              "column": 11
                            },
                            "end": {
                              "line": 142,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4528,
                            "end": 4535,
                            "loc": {
                              "start": {
                                "line": 142,
                                "column": 11
                              },
                              "end": {
                                "line": 142,
                                "column": 18
                              }
                            },
                            "name": "Object3"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4536,
                            "end": 4542,
                            "loc": {
                              "start": {
                                "line": 142,
                                "column": 19
                              },
                              "end": {
                                "line": 142,
                                "column": 25
                              }
                            },
                            "name": "Events"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4543,
                          "end": 4552,
                          "loc": {
                            "start": {
                              "line": 142,
                              "column": 26
                            },
                            "end": {
                              "line": 142,
                              "column": 35
                            }
                          },
                          "name": "Lifecycle"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4553,
                        "end": 4562,
                        "loc": {
                          "start": {
                            "line": 142,
                            "column": 36
                          },
                          "end": {
                            "line": 142,
                            "column": 45
                          }
                        },
                        "name": "Destroyed"
                      },
                      "computed": false
                    }
                  ]
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4566,
                "end": 4606,
                "loc": {
                  "start": {
                    "line": 143,
                    "column": 1
                  },
                  "end": {
                    "line": 143,
                    "column": 41
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4566,
                  "end": 4605,
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 1
                    },
                    "end": {
                      "line": 143,
                      "column": 40
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4566,
                    "end": 4577,
                    "loc": {
                      "start": {
                        "line": 143,
                        "column": 1
                      },
                      "end": {
                        "line": 143,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 4566,
                      "end": 4570,
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 1
                        },
                        "end": {
                          "line": 143,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4571,
                      "end": 4577,
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 6
                        },
                        "end": {
                          "line": 143,
                          "column": 12
                        }
                      },
                      "name": "parent"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4581,
                    "end": 4605,
                    "loc": {
                      "start": {
                        "line": 143,
                        "column": 16
                      },
                      "end": {
                        "line": 143,
                        "column": 40
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4581,
                      "end": 4599,
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 16
                        },
                        "end": {
                          "line": 143,
                          "column": 34
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 4581,
                        "end": 4592,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 16
                          },
                          "end": {
                            "line": 143,
                            "column": 27
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 4581,
                          "end": 4585,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 16
                            },
                            "end": {
                              "line": 143,
                              "column": 20
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4586,
                          "end": 4592,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 21
                            },
                            "end": {
                              "line": 143,
                              "column": 27
                            }
                          },
                          "name": "parent"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4593,
                        "end": 4599,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 28
                          },
                          "end": {
                            "line": 143,
                            "column": 34
                          }
                        },
                        "name": "remove"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 4600,
                        "end": 4604,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 35
                          },
                          "end": {
                            "line": 143,
                            "column": 39
                          }
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4611,
                "end": 4659,
                "loc": {
                  "start": {
                    "line": 144,
                    "column": 4
                  },
                  "end": {
                    "line": 144,
                    "column": 52
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4611,
                  "end": 4658,
                  "loc": {
                    "start": {
                      "line": 144,
                      "column": 4
                    },
                    "end": {
                      "line": 144,
                      "column": 51
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4611,
                    "end": 4630,
                    "loc": {
                      "start": {
                        "line": 144,
                        "column": 4
                      },
                      "end": {
                        "line": 144,
                        "column": 23
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4611,
                      "end": 4618,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 4
                        },
                        "end": {
                          "line": 144,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4619,
                      "end": 4630,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 12
                        },
                        "end": {
                          "line": 144,
                          "column": 23
                        }
                      },
                      "name": "interaction"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4634,
                    "end": 4658,
                    "loc": {
                      "start": {
                        "line": 144,
                        "column": 27
                      },
                      "end": {
                        "line": 144,
                        "column": 51
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4634,
                      "end": 4656,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 27
                        },
                        "end": {
                          "line": 144,
                          "column": 49
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4634,
                        "end": 4638,
                        "loc": {
                          "start": {
                            "line": 144,
                            "column": 27
                          },
                          "end": {
                            "line": 144,
                            "column": 31
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4639,
                        "end": 4656,
                        "loc": {
                          "start": {
                            "line": 144,
                            "column": 32
                          },
                          "end": {
                            "line": 144,
                            "column": 49
                          }
                        },
                        "name": "removeInteraction"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4664,
                "end": 4708,
                "loc": {
                  "start": {
                    "line": 145,
                    "column": 4
                  },
                  "end": {
                    "line": 145,
                    "column": 48
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4664,
                  "end": 4707,
                  "loc": {
                    "start": {
                      "line": 145,
                      "column": 4
                    },
                    "end": {
                      "line": 145,
                      "column": 47
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4664,
                    "end": 4681,
                    "loc": {
                      "start": {
                        "line": 145,
                        "column": 4
                      },
                      "end": {
                        "line": 145,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4664,
                      "end": 4671,
                      "loc": {
                        "start": {
                          "line": 145,
                          "column": 4
                        },
                        "end": {
                          "line": 145,
                          "column": 11
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4672,
                      "end": 4681,
                      "loc": {
                        "start": {
                          "line": 145,
                          "column": 12
                        },
                        "end": {
                          "line": 145,
                          "column": 21
                        }
                      },
                      "name": "listeners"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4685,
                    "end": 4707,
                    "loc": {
                      "start": {
                        "line": 145,
                        "column": 25
                      },
                      "end": {
                        "line": 145,
                        "column": 47
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4685,
                      "end": 4705,
                      "loc": {
                        "start": {
                          "line": 145,
                          "column": 25
                        },
                        "end": {
                          "line": 145,
                          "column": 45
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4685,
                        "end": 4689,
                        "loc": {
                          "start": {
                            "line": 145,
                            "column": 25
                          },
                          "end": {
                            "line": 145,
                            "column": 29
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4690,
                        "end": 4705,
                        "loc": {
                          "start": {
                            "line": 145,
                            "column": 30
                          },
                          "end": {
                            "line": 145,
                            "column": 45
                          }
                        },
                        "name": "removeListeners"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 4710,
                "end": 4758,
                "loc": {
                  "start": {
                    "line": 146,
                    "column": 1
                  },
                  "end": {
                    "line": 146,
                    "column": 49
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 4710,
                  "end": 4757,
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 1
                    },
                    "end": {
                      "line": 146,
                      "column": 48
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4710,
                    "end": 4722,
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 1
                      },
                      "end": {
                        "line": 146,
                        "column": 13
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4710,
                      "end": 4717,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 1
                        },
                        "end": {
                          "line": 146,
                          "column": 8
                        }
                      },
                      "name": "options"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4718,
                      "end": 4722,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 9
                        },
                        "end": {
                          "line": 146,
                          "column": 13
                        }
                      },
                      "name": "data"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 4726,
                    "end": 4757,
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 17
                      },
                      "end": {
                        "line": 146,
                        "column": 48
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4726,
                      "end": 4748,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 17
                        },
                        "end": {
                          "line": 146,
                          "column": 39
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 4726,
                        "end": 4730,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 17
                          },
                          "end": {
                            "line": 146,
                            "column": 21
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4731,
                        "end": 4748,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 22
                          },
                          "end": {
                            "line": 146,
                            "column": 39
                          }
                        },
                        "name": "_destroyRecursive"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 4749,
                        "end": 4756,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 40
                          },
                          "end": {
                            "line": 146,
                            "column": 47
                          }
                        },
                        "name": "options"
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "start": 4762,
      "end": 5374,
      "loc": {
        "start": {
          "line": 149,
          "column": 0
        },
        "end": {
          "line": 165,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 4771,
        "end": 4787,
        "loc": {
          "start": {
            "line": 149,
            "column": 9
          },
          "end": {
            "line": 149,
            "column": 25
          }
        },
        "name": "updateReferences"
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 4788,
          "end": 4794,
          "loc": {
            "start": {
              "line": 149,
              "column": 26
            },
            "end": {
              "line": 149,
              "column": 32
            }
          },
          "name": "parent"
        },
        {
          "type": "Identifier",
          "start": 4796,
          "end": 4802,
          "loc": {
            "start": {
              "line": 149,
              "column": 34
            },
            "end": {
              "line": 149,
              "column": 40
            }
          },
          "name": "object"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 4804,
        "end": 5374,
        "loc": {
          "start": {
            "line": 149,
            "column": 42
          },
          "end": {
            "line": 165,
            "column": 1
          }
        },
        "body": [
          {
            "type": "IfStatement",
            "start": 4810,
            "end": 5353,
            "loc": {
              "start": {
                "line": 150,
                "column": 4
              },
              "end": {
                "line": 163,
                "column": 5
              }
            },
            "test": {
              "type": "LogicalExpression",
              "start": 4814,
              "end": 4886,
              "loc": {
                "start": {
                  "line": 150,
                  "column": 8
                },
                "end": {
                  "line": 150,
                  "column": 80
                }
              },
              "left": {
                "type": "LogicalExpression",
                "start": 4814,
                "end": 4871,
                "loc": {
                  "start": {
                    "line": 150,
                    "column": 8
                  },
                  "end": {
                    "line": 150,
                    "column": 65
                  }
                },
                "left": {
                  "type": "BinaryExpression",
                  "start": 4814,
                  "end": 4838,
                  "loc": {
                    "start": {
                      "line": 150,
                      "column": 8
                    },
                    "end": {
                      "line": 150,
                      "column": 32
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 4814,
                    "end": 4827,
                    "loc": {
                      "start": {
                        "line": 150,
                        "column": 8
                      },
                      "end": {
                        "line": 150,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4814,
                      "end": 4820,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 8
                        },
                        "end": {
                          "line": 150,
                          "column": 14
                        }
                      },
                      "name": "object"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4821,
                      "end": 4827,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 15
                        },
                        "end": {
                          "line": 150,
                          "column": 21
                        }
                      },
                      "name": "parent"
                    },
                    "computed": false
                  },
                  "operator": "===",
                  "right": {
                    "type": "Identifier",
                    "start": 4832,
                    "end": 4838,
                    "loc": {
                      "start": {
                        "line": 150,
                        "column": 26
                      },
                      "end": {
                        "line": 150,
                        "column": 32
                      }
                    },
                    "name": "parent"
                  }
                },
                "operator": "&&",
                "right": {
                  "type": "BinaryExpression",
                  "start": 4842,
                  "end": 4871,
                  "loc": {
                    "start": {
                      "line": 150,
                      "column": 36
                    },
                    "end": {
                      "line": 150,
                      "column": 65
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 4842,
                    "end": 4848,
                    "loc": {
                      "start": {
                        "line": 150,
                        "column": 36
                      },
                      "end": {
                        "line": 150,
                        "column": 42
                      }
                    },
                    "name": "parent"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "MemberExpression",
                    "start": 4860,
                    "end": 4871,
                    "loc": {
                      "start": {
                        "line": 150,
                        "column": 54
                      },
                      "end": {
                        "line": 150,
                        "column": 65
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4860,
                      "end": 4865,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 54
                        },
                        "end": {
                          "line": 150,
                          "column": 59
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4866,
                      "end": 4871,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 60
                        },
                        "end": {
                          "line": 150,
                          "column": 65
                        }
                      },
                      "name": "Scene"
                    },
                    "computed": false
                  }
                }
              },
              "operator": "||",
              "right": {
                "type": "MemberExpression",
                "start": 4875,
                "end": 4886,
                "loc": {
                  "start": {
                    "line": 150,
                    "column": 69
                  },
                  "end": {
                    "line": 150,
                    "column": 80
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 4875,
                  "end": 4881,
                  "loc": {
                    "start": {
                      "line": 150,
                      "column": 69
                    },
                    "end": {
                      "line": 150,
                      "column": 75
                    }
                  },
                  "name": "parent"
                },
                "property": {
                  "type": "Identifier",
                  "start": 4882,
                  "end": 4886,
                  "loc": {
                    "start": {
                      "line": 150,
                      "column": 76
                    },
                    "end": {
                      "line": 150,
                      "column": 80
                    }
                  },
                  "name": "view"
                },
                "computed": false
              }
            },
            "consequent": {
              "type": "BlockStatement",
              "start": 4888,
              "end": 5182,
              "loc": {
                "start": {
                  "line": 150,
                  "column": 82
                },
                "end": {
                  "line": 157,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "ExpressionStatement",
                  "start": 4898,
                  "end": 5176,
                  "loc": {
                    "start": {
                      "line": 151,
                      "column": 8
                    },
                    "end": {
                      "line": 156,
                      "column": 11
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 4898,
                    "end": 5175,
                    "loc": {
                      "start": {
                        "line": 151,
                        "column": 8
                      },
                      "end": {
                        "line": 156,
                        "column": 10
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 4898,
                      "end": 4913,
                      "loc": {
                        "start": {
                          "line": 151,
                          "column": 8
                        },
                        "end": {
                          "line": 151,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 4898,
                        "end": 4904,
                        "loc": {
                          "start": {
                            "line": 151,
                            "column": 8
                          },
                          "end": {
                            "line": 151,
                            "column": 14
                          }
                        },
                        "name": "object"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4905,
                        "end": 4913,
                        "loc": {
                          "start": {
                            "line": 151,
                            "column": 15
                          },
                          "end": {
                            "line": 151,
                            "column": 23
                          }
                        },
                        "name": "traverse"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ArrowFunctionExpression",
                        "start": 4914,
                        "end": 5174,
                        "loc": {
                          "start": {
                            "line": 151,
                            "column": 24
                          },
                          "end": {
                            "line": 156,
                            "column": 9
                          }
                        },
                        "id": null,
                        "generator": false,
                        "expression": false,
                        "async": false,
                        "params": [
                          {
                            "type": "Identifier",
                            "start": 4914,
                            "end": 4919,
                            "loc": {
                              "start": {
                                "line": 151,
                                "column": 24
                              },
                              "end": {
                                "line": 151,
                                "column": 29
                              }
                            },
                            "name": "child"
                          }
                        ],
                        "body": {
                          "type": "BlockStatement",
                          "start": 4923,
                          "end": 5174,
                          "loc": {
                            "start": {
                              "line": 151,
                              "column": 33
                            },
                            "end": {
                              "line": 156,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 4937,
                              "end": 5005,
                              "loc": {
                                "start": {
                                  "line": 152,
                                  "column": 12
                                },
                                "end": {
                                  "line": 152,
                                  "column": 80
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 4937,
                                "end": 5004,
                                "loc": {
                                  "start": {
                                    "line": 152,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 152,
                                    "column": 79
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 4937,
                                  "end": 4948,
                                  "loc": {
                                    "start": {
                                      "line": 152,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 152,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4937,
                                    "end": 4942,
                                    "loc": {
                                      "start": {
                                        "line": 152,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 152,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4943,
                                    "end": 4948,
                                    "loc": {
                                      "start": {
                                        "line": 152,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 152,
                                        "column": 23
                                      }
                                    },
                                    "name": "scene"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "ConditionalExpression",
                                  "start": 4951,
                                  "end": 5004,
                                  "loc": {
                                    "start": {
                                      "line": 152,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 152,
                                      "column": 79
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 4951,
                                    "end": 4980,
                                    "loc": {
                                      "start": {
                                        "line": 152,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 152,
                                        "column": 55
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 4951,
                                      "end": 4957,
                                      "loc": {
                                        "start": {
                                          "line": 152,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 152,
                                          "column": 32
                                        }
                                      },
                                      "name": "parent"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 4969,
                                      "end": 4980,
                                      "loc": {
                                        "start": {
                                          "line": 152,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 152,
                                          "column": 55
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 4969,
                                        "end": 4974,
                                        "loc": {
                                          "start": {
                                            "line": 152,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 152,
                                            "column": 49
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4975,
                                        "end": 4980,
                                        "loc": {
                                          "start": {
                                            "line": 152,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 152,
                                            "column": 55
                                          }
                                        },
                                        "name": "Scene"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "Identifier",
                                    "start": 4983,
                                    "end": 4989,
                                    "loc": {
                                      "start": {
                                        "line": 152,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 152,
                                        "column": 64
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "alternate": {
                                    "type": "MemberExpression",
                                    "start": 4992,
                                    "end": 5004,
                                    "loc": {
                                      "start": {
                                        "line": 152,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 152,
                                        "column": 79
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 4992,
                                      "end": 4998,
                                      "loc": {
                                        "start": {
                                          "line": 152,
                                          "column": 67
                                        },
                                        "end": {
                                          "line": 152,
                                          "column": 73
                                        }
                                      },
                                      "name": "parent"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 4999,
                                      "end": 5004,
                                      "loc": {
                                        "start": {
                                          "line": 152,
                                          "column": 74
                                        },
                                        "end": {
                                          "line": 152,
                                          "column": 79
                                        }
                                      },
                                      "name": "scene"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5018,
                              "end": 5043,
                              "loc": {
                                "start": {
                                  "line": 153,
                                  "column": 12
                                },
                                "end": {
                                  "line": 153,
                                  "column": 37
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5018,
                                "end": 5042,
                                "loc": {
                                  "start": {
                                    "line": 153,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 153,
                                    "column": 36
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5018,
                                  "end": 5028,
                                  "loc": {
                                    "start": {
                                      "line": 153,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 153,
                                      "column": 22
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5018,
                                    "end": 5023,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5024,
                                    "end": 5028,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 22
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 5031,
                                  "end": 5042,
                                  "loc": {
                                    "start": {
                                      "line": 153,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 153,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5031,
                                    "end": 5037,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 31
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5038,
                                    "end": 5042,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 36
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5056,
                              "end": 5085,
                              "loc": {
                                "start": {
                                  "line": 154,
                                  "column": 12
                                },
                                "end": {
                                  "line": 154,
                                  "column": 41
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5056,
                                "end": 5084,
                                "loc": {
                                  "start": {
                                    "line": 154,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 154,
                                    "column": 40
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5056,
                                  "end": 5068,
                                  "loc": {
                                    "start": {
                                      "line": 154,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 154,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5056,
                                    "end": 5061,
                                    "loc": {
                                      "start": {
                                        "line": 154,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 154,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5062,
                                    "end": 5068,
                                    "loc": {
                                      "start": {
                                        "line": 154,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 154,
                                        "column": 24
                                      }
                                    },
                                    "name": "canvas"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 5071,
                                  "end": 5084,
                                  "loc": {
                                    "start": {
                                      "line": 154,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 154,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5071,
                                    "end": 5077,
                                    "loc": {
                                      "start": {
                                        "line": 154,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 154,
                                        "column": 33
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5078,
                                    "end": 5084,
                                    "loc": {
                                      "start": {
                                        "line": 154,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 154,
                                        "column": 40
                                      }
                                    },
                                    "name": "canvas"
                                  },
                                  "computed": false
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5098,
                              "end": 5164,
                              "loc": {
                                "start": {
                                  "line": 155,
                                  "column": 12
                                },
                                "end": {
                                  "line": 155,
                                  "column": 78
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 5098,
                                "end": 5163,
                                "loc": {
                                  "start": {
                                    "line": 155,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 155,
                                    "column": 77
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5098,
                                  "end": 5108,
                                  "loc": {
                                    "start": {
                                      "line": 155,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 155,
                                      "column": 22
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5098,
                                    "end": 5103,
                                    "loc": {
                                      "start": {
                                        "line": 155,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 155,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5104,
                                    "end": 5108,
                                    "loc": {
                                      "start": {
                                        "line": 155,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 155,
                                        "column": 22
                                      }
                                    },
                                    "name": "emit"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 5109,
                                    "end": 5150,
                                    "loc": {
                                      "start": {
                                        "line": 155,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 155,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5109,
                                      "end": 5140,
                                      "loc": {
                                        "start": {
                                          "line": 155,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 155,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5109,
                                        "end": 5130,
                                        "loc": {
                                          "start": {
                                            "line": 155,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 155,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 5109,
                                          "end": 5123,
                                          "loc": {
                                            "start": {
                                              "line": 155,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 155,
                                              "column": 37
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 5109,
                                            "end": 5114,
                                            "loc": {
                                              "start": {
                                                "line": 155,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 155,
                                                "column": 28
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5115,
                                            "end": 5123,
                                            "loc": {
                                              "start": {
                                                "line": 155,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 155,
                                                "column": 37
                                              }
                                            },
                                            "name": "Object3D"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5124,
                                          "end": 5130,
                                          "loc": {
                                            "start": {
                                              "line": 155,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 155,
                                              "column": 44
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5131,
                                        "end": 5140,
                                        "loc": {
                                          "start": {
                                            "line": 155,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 155,
                                            "column": 54
                                          }
                                        },
                                        "name": "Lifecycle"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5141,
                                      "end": 5150,
                                      "loc": {
                                        "start": {
                                          "line": 155,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 155,
                                          "column": 64
                                        }
                                      },
                                      "name": "ViewFound"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 5152,
                                    "end": 5162,
                                    "loc": {
                                      "start": {
                                        "line": 155,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 155,
                                        "column": 76
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 5152,
                                      "end": 5157,
                                      "loc": {
                                        "start": {
                                          "line": 155,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 155,
                                          "column": 71
                                        }
                                      },
                                      "name": "child"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5158,
                                      "end": 5162,
                                      "loc": {
                                        "start": {
                                          "line": 155,
                                          "column": 72
                                        },
                                        "end": {
                                          "line": 155,
                                          "column": 76
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              ]
            },
            "alternate": {
              "type": "BlockStatement",
              "start": 5188,
              "end": 5353,
              "loc": {
                "start": {
                  "line": 157,
                  "column": 11
                },
                "end": {
                  "line": 163,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "ExpressionStatement",
                  "start": 5198,
                  "end": 5347,
                  "loc": {
                    "start": {
                      "line": 158,
                      "column": 8
                    },
                    "end": {
                      "line": 162,
                      "column": 11
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 5198,
                    "end": 5346,
                    "loc": {
                      "start": {
                        "line": 158,
                        "column": 8
                      },
                      "end": {
                        "line": 162,
                        "column": 10
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 5198,
                      "end": 5213,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 8
                        },
                        "end": {
                          "line": 158,
                          "column": 23
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5198,
                        "end": 5204,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 8
                          },
                          "end": {
                            "line": 158,
                            "column": 14
                          }
                        },
                        "name": "object"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5205,
                        "end": 5213,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 15
                          },
                          "end": {
                            "line": 158,
                            "column": 23
                          }
                        },
                        "name": "traverse"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ArrowFunctionExpression",
                        "start": 5214,
                        "end": 5345,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 24
                          },
                          "end": {
                            "line": 162,
                            "column": 9
                          }
                        },
                        "id": null,
                        "generator": false,
                        "expression": false,
                        "async": false,
                        "params": [
                          {
                            "type": "Identifier",
                            "start": 5214,
                            "end": 5219,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 24
                              },
                              "end": {
                                "line": 158,
                                "column": 29
                              }
                            },
                            "name": "child"
                          }
                        ],
                        "body": {
                          "type": "BlockStatement",
                          "start": 5223,
                          "end": 5345,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 33
                            },
                            "end": {
                              "line": 162,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 5237,
                              "end": 5261,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 12
                                },
                                "end": {
                                  "line": 159,
                                  "column": 36
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5237,
                                "end": 5260,
                                "loc": {
                                  "start": {
                                    "line": 159,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 159,
                                    "column": 35
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5237,
                                  "end": 5248,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5237,
                                    "end": 5242,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5243,
                                    "end": 5248,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 23
                                      }
                                    },
                                    "name": "scene"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 5251,
                                  "end": 5260,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 35
                                    }
                                  },
                                  "name": "undefined"
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5274,
                              "end": 5297,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 12
                                },
                                "end": {
                                  "line": 160,
                                  "column": 35
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5274,
                                "end": 5296,
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 34
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5274,
                                  "end": 5284,
                                  "loc": {
                                    "start": {
                                      "line": 160,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 160,
                                      "column": 22
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5274,
                                    "end": 5279,
                                    "loc": {
                                      "start": {
                                        "line": 160,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 160,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5280,
                                    "end": 5284,
                                    "loc": {
                                      "start": {
                                        "line": 160,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 160,
                                        "column": 22
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 5287,
                                  "end": 5296,
                                  "loc": {
                                    "start": {
                                      "line": 160,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 160,
                                      "column": 34
                                    }
                                  },
                                  "name": "undefined"
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 5310,
                              "end": 5335,
                              "loc": {
                                "start": {
                                  "line": 161,
                                  "column": 12
                                },
                                "end": {
                                  "line": 161,
                                  "column": 37
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 5310,
                                "end": 5334,
                                "loc": {
                                  "start": {
                                    "line": 161,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 161,
                                    "column": 36
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 5310,
                                  "end": 5322,
                                  "loc": {
                                    "start": {
                                      "line": 161,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 161,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5310,
                                    "end": 5315,
                                    "loc": {
                                      "start": {
                                        "line": 161,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 161,
                                        "column": 17
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5316,
                                    "end": 5322,
                                    "loc": {
                                      "start": {
                                        "line": 161,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 161,
                                        "column": 24
                                      }
                                    },
                                    "name": "canvas"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 5325,
                                  "end": 5334,
                                  "loc": {
                                    "start": {
                                      "line": 161,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 161,
                                      "column": 36
                                    }
                                  },
                                  "name": "undefined"
                                }
                              }
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              ]
            }
          },
          {
            "type": "ReturnStatement",
            "start": 5358,
            "end": 5372,
            "loc": {
              "start": {
                "line": 164,
                "column": 4
              },
              "end": {
                "line": 164,
                "column": 18
              }
            },
            "argument": {
              "type": "Identifier",
              "start": 5365,
              "end": 5371,
              "loc": {
                "start": {
                  "line": 164,
                  "column": 11
                },
                "end": {
                  "line": 164,
                  "column": 17
                }
              },
              "name": "object"
            }
          }
        ]
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 5376,
      "end": 6061,
      "loc": {
        "start": {
          "line": 167,
          "column": 0
        },
        "end": {
          "line": 182,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 5376,
        "end": 6061,
        "loc": {
          "start": {
            "line": 167,
            "column": 0
          },
          "end": {
            "line": 182,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 5376,
          "end": 5409,
          "loc": {
            "start": {
              "line": 167,
              "column": 0
            },
            "end": {
              "line": 167,
              "column": 33
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 5376,
            "end": 5400,
            "loc": {
              "start": {
                "line": 167,
                "column": 0
              },
              "end": {
                "line": 167,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 5376,
              "end": 5390,
              "loc": {
                "start": {
                  "line": 167,
                  "column": 0
                },
                "end": {
                  "line": 167,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 5376,
                "end": 5381,
                "loc": {
                  "start": {
                    "line": 167,
                    "column": 0
                  },
                  "end": {
                    "line": 167,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 5382,
                "end": 5390,
                "loc": {
                  "start": {
                    "line": 167,
                    "column": 6
                  },
                  "end": {
                    "line": 167,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 5391,
              "end": 5400,
              "loc": {
                "start": {
                  "line": 167,
                  "column": 15
                },
                "end": {
                  "line": 167,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 5401,
            "end": 5409,
            "loc": {
              "start": {
                "line": 167,
                "column": 25
              },
              "end": {
                "line": 167,
                "column": 33
              }
            },
            "name": "addAsync"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 5412,
          "end": 6061,
          "loc": {
            "start": {
              "line": 167,
              "column": 36
            },
            "end": {
              "line": 182,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 5401,
            "end": 5409,
            "loc": {
              "start": {
                "line": 167,
                "column": 25
              },
              "end": {
                "line": 167,
                "column": 33
              }
            },
            "name": "addAsync"
          },
          "generator": false,
          "expression": false,
          "async": true,
          "params": [
            {
              "type": "Identifier",
              "start": 5427,
              "end": 5433,
              "loc": {
                "start": {
                  "line": 167,
                  "column": 51
                },
                "end": {
                  "line": 167,
                  "column": 57
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 5435,
            "end": 6061,
            "loc": {
              "start": {
                "line": 167,
                "column": 59
              },
              "end": {
                "line": 182,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 5441,
                "end": 5504,
                "loc": {
                  "start": {
                    "line": 168,
                    "column": 4
                  },
                  "end": {
                    "line": 168,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 5441,
                  "end": 5503,
                  "loc": {
                    "start": {
                      "line": 168,
                      "column": 4
                    },
                    "end": {
                      "line": 168,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 5441,
                    "end": 5447,
                    "loc": {
                      "start": {
                        "line": 168,
                        "column": 4
                      },
                      "end": {
                        "line": 168,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 5450,
                    "end": 5503,
                    "loc": {
                      "start": {
                        "line": 168,
                        "column": 13
                      },
                      "end": {
                        "line": 168,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 5450,
                      "end": 5470,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 13
                        },
                        "end": {
                          "line": 168,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 5450,
                        "end": 5466,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 13
                          },
                          "end": {
                            "line": 168,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5450,
                          "end": 5459,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 13
                            },
                            "end": {
                              "line": 168,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5460,
                          "end": 5466,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 23
                            },
                            "end": {
                              "line": 168,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 5469,
                        "end": 5470,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 32
                          },
                          "end": {
                            "line": 168,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 5473,
                      "end": 5494,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 36
                        },
                        "end": {
                          "line": 168,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 5473,
                        "end": 5483,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 36
                          },
                          "end": {
                            "line": 168,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5473,
                          "end": 5478,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 36
                            },
                            "end": {
                              "line": 168,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5479,
                          "end": 5483,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 42
                            },
                            "end": {
                              "line": 168,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 5484,
                          "end": 5493,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 47
                            },
                            "end": {
                              "line": 168,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 5497,
                      "end": 5503,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 60
                        },
                        "end": {
                          "line": 168,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 5509,
                "end": 5612,
                "loc": {
                  "start": {
                    "line": 169,
                    "column": 4
                  },
                  "end": {
                    "line": 171,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 5513,
                  "end": 5534,
                  "loc": {
                    "start": {
                      "line": 169,
                      "column": 8
                    },
                    "end": {
                      "line": 169,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 5513,
                    "end": 5526,
                    "loc": {
                      "start": {
                        "line": 169,
                        "column": 8
                      },
                      "end": {
                        "line": 169,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 5513,
                      "end": 5518,
                      "loc": {
                        "start": {
                          "line": 169,
                          "column": 8
                        },
                        "end": {
                          "line": 169,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 5519,
                      "end": 5526,
                      "loc": {
                        "start": {
                          "line": 169,
                          "column": 14
                        },
                        "end": {
                          "line": 169,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 5527,
                      "end": 5533,
                      "loc": {
                        "start": {
                          "line": 169,
                          "column": 22
                        },
                        "end": {
                          "line": 169,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 5536,
                  "end": 5612,
                  "loc": {
                    "start": {
                      "line": 169,
                      "column": 31
                    },
                    "end": {
                      "line": 171,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 5546,
                      "end": 5606,
                      "loc": {
                        "start": {
                          "line": 170,
                          "column": 8
                        },
                        "end": {
                          "line": 170,
                          "column": 68
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 5553,
                        "end": 5605,
                        "loc": {
                          "start": {
                            "line": 170,
                            "column": 15
                          },
                          "end": {
                            "line": 170,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5553,
                          "end": 5564,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 15
                            },
                            "end": {
                              "line": 170,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5553,
                            "end": 5560,
                            "loc": {
                              "start": {
                                "line": 170,
                                "column": 15
                              },
                              "end": {
                                "line": 170,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5561,
                            "end": 5564,
                            "loc": {
                              "start": {
                                "line": 170,
                                "column": 23
                              },
                              "end": {
                                "line": 170,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 5565,
                            "end": 5604,
                            "loc": {
                              "start": {
                                "line": 170,
                                "column": 27
                              },
                              "end": {
                                "line": 170,
                                "column": 66
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5565,
                              "end": 5575,
                              "loc": {
                                "start": {
                                  "line": 170,
                                  "column": 27
                                },
                                "end": {
                                  "line": 170,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5565,
                                "end": 5571,
                                "loc": {
                                  "start": {
                                    "line": 170,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 170,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5572,
                                "end": 5575,
                                "loc": {
                                  "start": {
                                    "line": 170,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 170,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 5576,
                                "end": 5603,
                                "loc": {
                                  "start": {
                                    "line": 170,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 170,
                                    "column": 65
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 5576,
                                    "end": 5580,
                                    "loc": {
                                      "start": {
                                        "line": 170,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 170,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 5584,
                                  "end": 5603,
                                  "loc": {
                                    "start": {
                                      "line": 170,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 170,
                                      "column": 65
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 5584,
                                    "end": 5597,
                                    "loc": {
                                      "start": {
                                        "line": 170,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 170,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5584,
                                      "end": 5588,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5589,
                                      "end": 5597,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 59
                                        }
                                      },
                                      "name": "addAsync"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 5598,
                                      "end": 5602,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 64
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 5618,
                "end": 6059,
                "loc": {
                  "start": {
                    "line": 173,
                    "column": 4
                  },
                  "end": {
                    "line": 181,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 5622,
                  "end": 5673,
                  "loc": {
                    "start": {
                      "line": 173,
                      "column": 8
                    },
                    "end": {
                      "line": 173,
                      "column": 59
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 5622,
                    "end": 5637,
                    "loc": {
                      "start": {
                        "line": 173,
                        "column": 8
                      },
                      "end": {
                        "line": 173,
                        "column": 23
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 5622,
                      "end": 5628,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 8
                        },
                        "end": {
                          "line": 173,
                          "column": 14
                        }
                      },
                      "name": "object"
                    },
                    "operator": "!==",
                    "right": {
                      "type": "ThisExpression",
                      "start": 5633,
                      "end": 5637,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 19
                        },
                        "end": {
                          "line": 173,
                          "column": 23
                        }
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 5641,
                    "end": 5673,
                    "loc": {
                      "start": {
                        "line": 173,
                        "column": 27
                      },
                      "end": {
                        "line": 173,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 5641,
                      "end": 5647,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 27
                        },
                        "end": {
                          "line": 173,
                          "column": 33
                        }
                      },
                      "name": "object"
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "MemberExpression",
                      "start": 5659,
                      "end": 5673,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 45
                        },
                        "end": {
                          "line": 173,
                          "column": 59
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5659,
                        "end": 5664,
                        "loc": {
                          "start": {
                            "line": 173,
                            "column": 45
                          },
                          "end": {
                            "line": 173,
                            "column": 50
                          }
                        },
                        "name": "THREE"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5665,
                        "end": 5673,
                        "loc": {
                          "start": {
                            "line": 173,
                            "column": 51
                          },
                          "end": {
                            "line": 173,
                            "column": 59
                          }
                        },
                        "name": "Object3D"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 5675,
                  "end": 6059,
                  "loc": {
                    "start": {
                      "line": 173,
                      "column": 61
                    },
                    "end": {
                      "line": 181,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 5685,
                      "end": 5758,
                      "loc": {
                        "start": {
                          "line": 174,
                          "column": 8
                        },
                        "end": {
                          "line": 175,
                          "column": 52
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 5689,
                        "end": 5704,
                        "loc": {
                          "start": {
                            "line": 174,
                            "column": 12
                          },
                          "end": {
                            "line": 174,
                            "column": 27
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 5690,
                          "end": 5704,
                          "loc": {
                            "start": {
                              "line": 174,
                              "column": 13
                            },
                            "end": {
                              "line": 174,
                              "column": 27
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "MemberExpression",
                            "start": 5691,
                            "end": 5704,
                            "loc": {
                              "start": {
                                "line": 174,
                                "column": 14
                              },
                              "end": {
                                "line": 174,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5691,
                              "end": 5697,
                              "loc": {
                                "start": {
                                  "line": 174,
                                  "column": 14
                                },
                                "end": {
                                  "line": 174,
                                  "column": 20
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5698,
                              "end": 5704,
                              "loc": {
                                "start": {
                                  "line": 174,
                                  "column": 21
                                },
                                "end": {
                                  "line": 174,
                                  "column": 27
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5718,
                        "end": 5758,
                        "loc": {
                          "start": {
                            "line": 175,
                            "column": 12
                          },
                          "end": {
                            "line": 175,
                            "column": 52
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 5718,
                          "end": 5757,
                          "loc": {
                            "start": {
                              "line": 175,
                              "column": 12
                            },
                            "end": {
                              "line": 175,
                              "column": 51
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 5724,
                            "end": 5757,
                            "loc": {
                              "start": {
                                "line": 175,
                                "column": 18
                              },
                              "end": {
                                "line": 175,
                                "column": 51
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5724,
                              "end": 5749,
                              "loc": {
                                "start": {
                                  "line": 175,
                                  "column": 18
                                },
                                "end": {
                                  "line": 175,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 5724,
                                "end": 5737,
                                "loc": {
                                  "start": {
                                    "line": 175,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5724,
                                  "end": 5730,
                                  "loc": {
                                    "start": {
                                      "line": 175,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 175,
                                      "column": 24
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5731,
                                  "end": 5737,
                                  "loc": {
                                    "start": {
                                      "line": 175,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 175,
                                      "column": 31
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5738,
                                "end": 5749,
                                "loc": {
                                  "start": {
                                    "line": 175,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 43
                                  }
                                },
                                "name": "removeAsync"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 5750,
                                "end": 5756,
                                "loc": {
                                  "start": {
                                    "line": 175,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5767,
                      "end": 5788,
                      "loc": {
                        "start": {
                          "line": 176,
                          "column": 8
                        },
                        "end": {
                          "line": 176,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 5767,
                        "end": 5787,
                        "loc": {
                          "start": {
                            "line": 176,
                            "column": 8
                          },
                          "end": {
                            "line": 176,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 5767,
                          "end": 5780,
                          "loc": {
                            "start": {
                              "line": 176,
                              "column": 8
                            },
                            "end": {
                              "line": 176,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5767,
                            "end": 5773,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 8
                              },
                              "end": {
                                "line": 176,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5774,
                            "end": 5780,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 15
                              },
                              "end": {
                                "line": 176,
                                "column": 21
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ThisExpression",
                          "start": 5783,
                          "end": 5787,
                          "loc": {
                            "start": {
                              "line": 176,
                              "column": 24
                            },
                            "end": {
                              "line": 176,
                              "column": 28
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5797,
                      "end": 5848,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 8
                        },
                        "end": {
                          "line": 177,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 5797,
                        "end": 5847,
                        "loc": {
                          "start": {
                            "line": 177,
                            "column": 8
                          },
                          "end": {
                            "line": 177,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5797,
                          "end": 5815,
                          "loc": {
                            "start": {
                              "line": 177,
                              "column": 8
                            },
                            "end": {
                              "line": 177,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 5797,
                            "end": 5810,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 8
                              },
                              "end": {
                                "line": 177,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5797,
                              "end": 5801,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 8
                                },
                                "end": {
                                  "line": 177,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5802,
                              "end": 5810,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 13
                                },
                                "end": {
                                  "line": 177,
                                  "column": 21
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5811,
                            "end": 5815,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 22
                              },
                              "end": {
                                "line": 177,
                                "column": 26
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 5816,
                            "end": 5846,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 27
                              },
                              "end": {
                                "line": 177,
                                "column": 57
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 5816,
                              "end": 5832,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 27
                                },
                                "end": {
                                  "line": 177,
                                  "column": 43
                                }
                              },
                              "name": "updateReferences"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 5833,
                                "end": 5837,
                                "loc": {
                                  "start": {
                                    "line": 177,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 177,
                                    "column": 48
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 5839,
                                "end": 5845,
                                "loc": {
                                  "start": {
                                    "line": 177,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 177,
                                    "column": 56
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5857,
                      "end": 5929,
                      "loc": {
                        "start": {
                          "line": 178,
                          "column": 8
                        },
                        "end": {
                          "line": 178,
                          "column": 80
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 5857,
                        "end": 5928,
                        "loc": {
                          "start": {
                            "line": 178,
                            "column": 8
                          },
                          "end": {
                            "line": 178,
                            "column": 79
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 5863,
                          "end": 5928,
                          "loc": {
                            "start": {
                              "line": 178,
                              "column": 14
                            },
                            "end": {
                              "line": 178,
                              "column": 79
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5863,
                            "end": 5872,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 14
                              },
                              "end": {
                                "line": 178,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5863,
                              "end": 5867,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 14
                                },
                                "end": {
                                  "line": 178,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5868,
                              "end": 5872,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 19
                                },
                                "end": {
                                  "line": 178,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 5873,
                              "end": 5908,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 24
                                },
                                "end": {
                                  "line": 178,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 5873,
                                "end": 5897,
                                "loc": {
                                  "start": {
                                    "line": 178,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 178,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 5873,
                                  "end": 5887,
                                  "loc": {
                                    "start": {
                                      "line": 178,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 178,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5873,
                                    "end": 5880,
                                    "loc": {
                                      "start": {
                                        "line": 178,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 178,
                                        "column": 31
                                      }
                                    },
                                    "name": "Object3"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5881,
                                    "end": 5887,
                                    "loc": {
                                      "start": {
                                        "line": 178,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 178,
                                        "column": 38
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5888,
                                  "end": 5897,
                                  "loc": {
                                    "start": {
                                      "line": 178,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 178,
                                      "column": 48
                                    }
                                  },
                                  "name": "Lifecycle"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5898,
                                "end": 5908,
                                "loc": {
                                  "start": {
                                    "line": 178,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 178,
                                    "column": 59
                                  }
                                },
                                "name": "ChildAdded"
                              },
                              "computed": false
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 5910,
                              "end": 5927,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 61
                                },
                                "end": {
                                  "line": 178,
                                  "column": 78
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 5912,
                                  "end": 5925,
                                  "loc": {
                                    "start": {
                                      "line": 178,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 178,
                                      "column": 76
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 5912,
                                    "end": 5917,
                                    "loc": {
                                      "start": {
                                        "line": 178,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 178,
                                        "column": 68
                                      }
                                    },
                                    "name": "child"
                                  },
                                  "value": {
                                    "type": "Identifier",
                                    "start": 5919,
                                    "end": 5925,
                                    "loc": {
                                      "start": {
                                        "line": 178,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 178,
                                        "column": 76
                                      }
                                    },
                                    "name": "object"
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5938,
                      "end": 6006,
                      "loc": {
                        "start": {
                          "line": 179,
                          "column": 8
                        },
                        "end": {
                          "line": 179,
                          "column": 76
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 5938,
                        "end": 6005,
                        "loc": {
                          "start": {
                            "line": 179,
                            "column": 8
                          },
                          "end": {
                            "line": 179,
                            "column": 75
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 5944,
                          "end": 6005,
                          "loc": {
                            "start": {
                              "line": 179,
                              "column": 14
                            },
                            "end": {
                              "line": 179,
                              "column": 75
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5944,
                            "end": 5955,
                            "loc": {
                              "start": {
                                "line": 179,
                                "column": 14
                              },
                              "end": {
                                "line": 179,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5944,
                              "end": 5950,
                              "loc": {
                                "start": {
                                  "line": 179,
                                  "column": 14
                                },
                                "end": {
                                  "line": 179,
                                  "column": 20
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5951,
                              "end": 5955,
                              "loc": {
                                "start": {
                                  "line": 179,
                                  "column": 21
                                },
                                "end": {
                                  "line": 179,
                                  "column": 25
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 5956,
                              "end": 5986,
                              "loc": {
                                "start": {
                                  "line": 179,
                                  "column": 26
                                },
                                "end": {
                                  "line": 179,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 5956,
                                "end": 5980,
                                "loc": {
                                  "start": {
                                    "line": 179,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 179,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 5956,
                                  "end": 5970,
                                  "loc": {
                                    "start": {
                                      "line": 179,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 179,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 5956,
                                    "end": 5963,
                                    "loc": {
                                      "start": {
                                        "line": 179,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 179,
                                        "column": 33
                                      }
                                    },
                                    "name": "Object3"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5964,
                                    "end": 5970,
                                    "loc": {
                                      "start": {
                                        "line": 179,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 179,
                                        "column": 40
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5971,
                                  "end": 5980,
                                  "loc": {
                                    "start": {
                                      "line": 179,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 179,
                                      "column": 50
                                    }
                                  },
                                  "name": "Lifecycle"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5981,
                                "end": 5986,
                                "loc": {
                                  "start": {
                                    "line": 179,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 179,
                                    "column": 56
                                  }
                                },
                                "name": "Added"
                              },
                              "computed": false
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 5988,
                              "end": 6004,
                              "loc": {
                                "start": {
                                  "line": 179,
                                  "column": 58
                                },
                                "end": {
                                  "line": 179,
                                  "column": 74
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 5990,
                                  "end": 6002,
                                  "loc": {
                                    "start": {
                                      "line": 179,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 179,
                                      "column": 72
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 5990,
                                    "end": 5996,
                                    "loc": {
                                      "start": {
                                        "line": 179,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 179,
                                        "column": 66
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "value": {
                                    "type": "ThisExpression",
                                    "start": 5998,
                                    "end": 6002,
                                    "loc": {
                                      "start": {
                                        "line": 179,
                                        "column": 68
                                      },
                                      "end": {
                                        "line": 179,
                                        "column": 72
                                      }
                                    }
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6015,
                      "end": 6053,
                      "loc": {
                        "start": {
                          "line": 180,
                          "column": 8
                        },
                        "end": {
                          "line": 180,
                          "column": 46
                        }
                      },
                      "expression": {
                        "type": "LogicalExpression",
                        "start": 6015,
                        "end": 6052,
                        "loc": {
                          "start": {
                            "line": 180,
                            "column": 8
                          },
                          "end": {
                            "line": 180,
                            "column": 45
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 6015,
                          "end": 6026,
                          "loc": {
                            "start": {
                              "line": 180,
                              "column": 8
                            },
                            "end": {
                              "line": 180,
                              "column": 19
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 6016,
                            "end": 6026,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 9
                              },
                              "end": {
                                "line": 180,
                                "column": 19
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 6017,
                              "end": 6026,
                              "loc": {
                                "start": {
                                  "line": 180,
                                  "column": 10
                                },
                                "end": {
                                  "line": 180,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6017,
                                "end": 6021,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 14
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6022,
                                "end": 6026,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 19
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            }
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "CallExpression",
                          "start": 6030,
                          "end": 6052,
                          "loc": {
                            "start": {
                              "line": 180,
                              "column": 23
                            },
                            "end": {
                              "line": 180,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6030,
                            "end": 6050,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 23
                              },
                              "end": {
                                "line": 180,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6030,
                              "end": 6039,
                              "loc": {
                                "start": {
                                  "line": 180,
                                  "column": 23
                                },
                                "end": {
                                  "line": 180,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6030,
                                "end": 6034,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6035,
                                "end": 6039,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 32
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6040,
                              "end": 6050,
                              "loc": {
                                "start": {
                                  "line": 180,
                                  "column": 33
                                },
                                "end": {
                                  "line": 180,
                                  "column": 43
                                }
                              },
                              "name": "invalidate"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 6063,
      "end": 6709,
      "loc": {
        "start": {
          "line": 184,
          "column": 0
        },
        "end": {
          "line": 199,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 6063,
        "end": 6709,
        "loc": {
          "start": {
            "line": 184,
            "column": 0
          },
          "end": {
            "line": 199,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 6063,
          "end": 6091,
          "loc": {
            "start": {
              "line": 184,
              "column": 0
            },
            "end": {
              "line": 184,
              "column": 28
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 6063,
            "end": 6087,
            "loc": {
              "start": {
                "line": 184,
                "column": 0
              },
              "end": {
                "line": 184,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 6063,
              "end": 6077,
              "loc": {
                "start": {
                  "line": 184,
                  "column": 0
                },
                "end": {
                  "line": 184,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 6063,
                "end": 6068,
                "loc": {
                  "start": {
                    "line": 184,
                    "column": 0
                  },
                  "end": {
                    "line": 184,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 6069,
                "end": 6077,
                "loc": {
                  "start": {
                    "line": 184,
                    "column": 6
                  },
                  "end": {
                    "line": 184,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 6078,
              "end": 6087,
              "loc": {
                "start": {
                  "line": 184,
                  "column": 15
                },
                "end": {
                  "line": 184,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 6088,
            "end": 6091,
            "loc": {
              "start": {
                "line": 184,
                "column": 25
              },
              "end": {
                "line": 184,
                "column": 28
              }
            },
            "name": "add"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 6094,
          "end": 6709,
          "loc": {
            "start": {
              "line": 184,
              "column": 31
            },
            "end": {
              "line": 199,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 6088,
            "end": 6091,
            "loc": {
              "start": {
                "line": 184,
                "column": 25
              },
              "end": {
                "line": 184,
                "column": 28
              }
            },
            "name": "add"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 6103,
              "end": 6109,
              "loc": {
                "start": {
                  "line": 184,
                  "column": 40
                },
                "end": {
                  "line": 184,
                  "column": 46
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 6111,
            "end": 6709,
            "loc": {
              "start": {
                "line": 184,
                "column": 48
              },
              "end": {
                "line": 199,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 6117,
                "end": 6180,
                "loc": {
                  "start": {
                    "line": 185,
                    "column": 4
                  },
                  "end": {
                    "line": 185,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 6117,
                  "end": 6179,
                  "loc": {
                    "start": {
                      "line": 185,
                      "column": 4
                    },
                    "end": {
                      "line": 185,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 6117,
                    "end": 6123,
                    "loc": {
                      "start": {
                        "line": 185,
                        "column": 4
                      },
                      "end": {
                        "line": 185,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 6126,
                    "end": 6179,
                    "loc": {
                      "start": {
                        "line": 185,
                        "column": 13
                      },
                      "end": {
                        "line": 185,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 6126,
                      "end": 6146,
                      "loc": {
                        "start": {
                          "line": 185,
                          "column": 13
                        },
                        "end": {
                          "line": 185,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 6126,
                        "end": 6142,
                        "loc": {
                          "start": {
                            "line": 185,
                            "column": 13
                          },
                          "end": {
                            "line": 185,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6126,
                          "end": 6135,
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 13
                            },
                            "end": {
                              "line": 185,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6136,
                          "end": 6142,
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 23
                            },
                            "end": {
                              "line": 185,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 6145,
                        "end": 6146,
                        "loc": {
                          "start": {
                            "line": 185,
                            "column": 32
                          },
                          "end": {
                            "line": 185,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 6149,
                      "end": 6170,
                      "loc": {
                        "start": {
                          "line": 185,
                          "column": 36
                        },
                        "end": {
                          "line": 185,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 6149,
                        "end": 6159,
                        "loc": {
                          "start": {
                            "line": 185,
                            "column": 36
                          },
                          "end": {
                            "line": 185,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6149,
                          "end": 6154,
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 36
                            },
                            "end": {
                              "line": 185,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6155,
                          "end": 6159,
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 42
                            },
                            "end": {
                              "line": 185,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 6160,
                          "end": 6169,
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 47
                            },
                            "end": {
                              "line": 185,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 6173,
                      "end": 6179,
                      "loc": {
                        "start": {
                          "line": 185,
                          "column": 60
                        },
                        "end": {
                          "line": 185,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 6185,
                "end": 6283,
                "loc": {
                  "start": {
                    "line": 186,
                    "column": 4
                  },
                  "end": {
                    "line": 188,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 6189,
                  "end": 6210,
                  "loc": {
                    "start": {
                      "line": 186,
                      "column": 8
                    },
                    "end": {
                      "line": 186,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 6189,
                    "end": 6202,
                    "loc": {
                      "start": {
                        "line": 186,
                        "column": 8
                      },
                      "end": {
                        "line": 186,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 6189,
                      "end": 6194,
                      "loc": {
                        "start": {
                          "line": 186,
                          "column": 8
                        },
                        "end": {
                          "line": 186,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6195,
                      "end": 6202,
                      "loc": {
                        "start": {
                          "line": 186,
                          "column": 14
                        },
                        "end": {
                          "line": 186,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 6203,
                      "end": 6209,
                      "loc": {
                        "start": {
                          "line": 186,
                          "column": 22
                        },
                        "end": {
                          "line": 186,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6212,
                  "end": 6283,
                  "loc": {
                    "start": {
                      "line": 186,
                      "column": 31
                    },
                    "end": {
                      "line": 188,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6222,
                      "end": 6277,
                      "loc": {
                        "start": {
                          "line": 187,
                          "column": 8
                        },
                        "end": {
                          "line": 187,
                          "column": 63
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6229,
                        "end": 6276,
                        "loc": {
                          "start": {
                            "line": 187,
                            "column": 15
                          },
                          "end": {
                            "line": 187,
                            "column": 62
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6229,
                          "end": 6240,
                          "loc": {
                            "start": {
                              "line": 187,
                              "column": 15
                            },
                            "end": {
                              "line": 187,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6229,
                            "end": 6236,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 15
                              },
                              "end": {
                                "line": 187,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6237,
                            "end": 6240,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 23
                              },
                              "end": {
                                "line": 187,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6241,
                            "end": 6275,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 27
                              },
                              "end": {
                                "line": 187,
                                "column": 61
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6241,
                              "end": 6251,
                              "loc": {
                                "start": {
                                  "line": 187,
                                  "column": 27
                                },
                                "end": {
                                  "line": 187,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6241,
                                "end": 6247,
                                "loc": {
                                  "start": {
                                    "line": 187,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 187,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6248,
                                "end": 6251,
                                "loc": {
                                  "start": {
                                    "line": 187,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 187,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 6252,
                                "end": 6274,
                                "loc": {
                                  "start": {
                                    "line": 187,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 187,
                                    "column": 60
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 6252,
                                    "end": 6256,
                                    "loc": {
                                      "start": {
                                        "line": 187,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 187,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 6260,
                                  "end": 6274,
                                  "loc": {
                                    "start": {
                                      "line": 187,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 187,
                                      "column": 60
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6260,
                                    "end": 6268,
                                    "loc": {
                                      "start": {
                                        "line": 187,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 187,
                                        "column": 54
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6260,
                                      "end": 6264,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6265,
                                      "end": 6268,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 54
                                        }
                                      },
                                      "name": "add"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 6269,
                                      "end": 6273,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 59
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 6289,
                "end": 6707,
                "loc": {
                  "start": {
                    "line": 190,
                    "column": 4
                  },
                  "end": {
                    "line": 198,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 6293,
                  "end": 6344,
                  "loc": {
                    "start": {
                      "line": 190,
                      "column": 8
                    },
                    "end": {
                      "line": 190,
                      "column": 59
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 6293,
                    "end": 6308,
                    "loc": {
                      "start": {
                        "line": 190,
                        "column": 8
                      },
                      "end": {
                        "line": 190,
                        "column": 23
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 6293,
                      "end": 6299,
                      "loc": {
                        "start": {
                          "line": 190,
                          "column": 8
                        },
                        "end": {
                          "line": 190,
                          "column": 14
                        }
                      },
                      "name": "object"
                    },
                    "operator": "!==",
                    "right": {
                      "type": "ThisExpression",
                      "start": 6304,
                      "end": 6308,
                      "loc": {
                        "start": {
                          "line": 190,
                          "column": 19
                        },
                        "end": {
                          "line": 190,
                          "column": 23
                        }
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 6312,
                    "end": 6344,
                    "loc": {
                      "start": {
                        "line": 190,
                        "column": 27
                      },
                      "end": {
                        "line": 190,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 6312,
                      "end": 6318,
                      "loc": {
                        "start": {
                          "line": 190,
                          "column": 27
                        },
                        "end": {
                          "line": 190,
                          "column": 33
                        }
                      },
                      "name": "object"
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "MemberExpression",
                      "start": 6330,
                      "end": 6344,
                      "loc": {
                        "start": {
                          "line": 190,
                          "column": 45
                        },
                        "end": {
                          "line": 190,
                          "column": 59
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 6330,
                        "end": 6335,
                        "loc": {
                          "start": {
                            "line": 190,
                            "column": 45
                          },
                          "end": {
                            "line": 190,
                            "column": 50
                          }
                        },
                        "name": "THREE"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6336,
                        "end": 6344,
                        "loc": {
                          "start": {
                            "line": 190,
                            "column": 51
                          },
                          "end": {
                            "line": 190,
                            "column": 59
                          }
                        },
                        "name": "Object3D"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6346,
                  "end": 6707,
                  "loc": {
                    "start": {
                      "line": 190,
                      "column": 61
                    },
                    "end": {
                      "line": 198,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6356,
                      "end": 6418,
                      "loc": {
                        "start": {
                          "line": 191,
                          "column": 8
                        },
                        "end": {
                          "line": 192,
                          "column": 41
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 6360,
                        "end": 6375,
                        "loc": {
                          "start": {
                            "line": 191,
                            "column": 12
                          },
                          "end": {
                            "line": 191,
                            "column": 27
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "UnaryExpression",
                          "start": 6361,
                          "end": 6375,
                          "loc": {
                            "start": {
                              "line": 191,
                              "column": 13
                            },
                            "end": {
                              "line": 191,
                              "column": 27
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "MemberExpression",
                            "start": 6362,
                            "end": 6375,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 14
                              },
                              "end": {
                                "line": 191,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 6362,
                              "end": 6368,
                              "loc": {
                                "start": {
                                  "line": 191,
                                  "column": 14
                                },
                                "end": {
                                  "line": 191,
                                  "column": 20
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6369,
                              "end": 6375,
                              "loc": {
                                "start": {
                                  "line": 191,
                                  "column": 21
                                },
                                "end": {
                                  "line": 191,
                                  "column": 27
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 6389,
                        "end": 6418,
                        "loc": {
                          "start": {
                            "line": 192,
                            "column": 12
                          },
                          "end": {
                            "line": 192,
                            "column": 41
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 6389,
                          "end": 6417,
                          "loc": {
                            "start": {
                              "line": 192,
                              "column": 12
                            },
                            "end": {
                              "line": 192,
                              "column": 40
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6389,
                            "end": 6409,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 12
                              },
                              "end": {
                                "line": 192,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6389,
                              "end": 6402,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 12
                                },
                                "end": {
                                  "line": 192,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6389,
                                "end": 6395,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 18
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6396,
                                "end": 6402,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 25
                                  }
                                },
                                "name": "parent"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6403,
                              "end": 6409,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 26
                                },
                                "end": {
                                  "line": 192,
                                  "column": 32
                                }
                              },
                              "name": "remove"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 6410,
                              "end": 6416,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 33
                                },
                                "end": {
                                  "line": 192,
                                  "column": 39
                                }
                              },
                              "name": "object"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6427,
                      "end": 6448,
                      "loc": {
                        "start": {
                          "line": 193,
                          "column": 8
                        },
                        "end": {
                          "line": 193,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 6427,
                        "end": 6447,
                        "loc": {
                          "start": {
                            "line": 193,
                            "column": 8
                          },
                          "end": {
                            "line": 193,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 6427,
                          "end": 6440,
                          "loc": {
                            "start": {
                              "line": 193,
                              "column": 8
                            },
                            "end": {
                              "line": 193,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6427,
                            "end": 6433,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 8
                              },
                              "end": {
                                "line": 193,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6434,
                            "end": 6440,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 15
                              },
                              "end": {
                                "line": 193,
                                "column": 21
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ThisExpression",
                          "start": 6443,
                          "end": 6447,
                          "loc": {
                            "start": {
                              "line": 193,
                              "column": 24
                            },
                            "end": {
                              "line": 193,
                              "column": 28
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6457,
                      "end": 6508,
                      "loc": {
                        "start": {
                          "line": 194,
                          "column": 8
                        },
                        "end": {
                          "line": 194,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6457,
                        "end": 6507,
                        "loc": {
                          "start": {
                            "line": 194,
                            "column": 8
                          },
                          "end": {
                            "line": 194,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6457,
                          "end": 6475,
                          "loc": {
                            "start": {
                              "line": 194,
                              "column": 8
                            },
                            "end": {
                              "line": 194,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 6457,
                            "end": 6470,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 8
                              },
                              "end": {
                                "line": 194,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6457,
                              "end": 6461,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 8
                                },
                                "end": {
                                  "line": 194,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6462,
                              "end": 6470,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 13
                                },
                                "end": {
                                  "line": 194,
                                  "column": 21
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6471,
                            "end": 6475,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 22
                              },
                              "end": {
                                "line": 194,
                                "column": 26
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6476,
                            "end": 6506,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 27
                              },
                              "end": {
                                "line": 194,
                                "column": 57
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 6476,
                              "end": 6492,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 27
                                },
                                "end": {
                                  "line": 194,
                                  "column": 43
                                }
                              },
                              "name": "updateReferences"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 6493,
                                "end": 6497,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 48
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 6499,
                                "end": 6505,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 56
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6517,
                      "end": 6583,
                      "loc": {
                        "start": {
                          "line": 195,
                          "column": 8
                        },
                        "end": {
                          "line": 195,
                          "column": 74
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6517,
                        "end": 6582,
                        "loc": {
                          "start": {
                            "line": 195,
                            "column": 8
                          },
                          "end": {
                            "line": 195,
                            "column": 73
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6517,
                          "end": 6526,
                          "loc": {
                            "start": {
                              "line": 195,
                              "column": 8
                            },
                            "end": {
                              "line": 195,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6517,
                            "end": 6521,
                            "loc": {
                              "start": {
                                "line": 195,
                                "column": 8
                              },
                              "end": {
                                "line": 195,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6522,
                            "end": 6526,
                            "loc": {
                              "start": {
                                "line": 195,
                                "column": 13
                              },
                              "end": {
                                "line": 195,
                                "column": 17
                              }
                            },
                            "name": "emit"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 6527,
                            "end": 6562,
                            "loc": {
                              "start": {
                                "line": 195,
                                "column": 18
                              },
                              "end": {
                                "line": 195,
                                "column": 53
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6527,
                              "end": 6551,
                              "loc": {
                                "start": {
                                  "line": 195,
                                  "column": 18
                                },
                                "end": {
                                  "line": 195,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6527,
                                "end": 6541,
                                "loc": {
                                  "start": {
                                    "line": 195,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 195,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6527,
                                  "end": 6534,
                                  "loc": {
                                    "start": {
                                      "line": 195,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 195,
                                      "column": 25
                                    }
                                  },
                                  "name": "Object3"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6535,
                                  "end": 6541,
                                  "loc": {
                                    "start": {
                                      "line": 195,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 195,
                                      "column": 32
                                    }
                                  },
                                  "name": "Events"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6542,
                                "end": 6551,
                                "loc": {
                                  "start": {
                                    "line": 195,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 195,
                                    "column": 42
                                  }
                                },
                                "name": "Lifecycle"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6552,
                              "end": 6562,
                              "loc": {
                                "start": {
                                  "line": 195,
                                  "column": 43
                                },
                                "end": {
                                  "line": 195,
                                  "column": 53
                                }
                              },
                              "name": "ChildAdded"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 6564,
                            "end": 6581,
                            "loc": {
                              "start": {
                                "line": 195,
                                "column": 55
                              },
                              "end": {
                                "line": 195,
                                "column": 72
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 6566,
                                "end": 6579,
                                "loc": {
                                  "start": {
                                    "line": 195,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 195,
                                    "column": 70
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 6566,
                                  "end": 6571,
                                  "loc": {
                                    "start": {
                                      "line": 195,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 195,
                                      "column": 62
                                    }
                                  },
                                  "name": "child"
                                },
                                "value": {
                                  "type": "Identifier",
                                  "start": 6573,
                                  "end": 6579,
                                  "loc": {
                                    "start": {
                                      "line": 195,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 195,
                                      "column": 70
                                    }
                                  },
                                  "name": "object"
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6592,
                      "end": 6654,
                      "loc": {
                        "start": {
                          "line": 196,
                          "column": 8
                        },
                        "end": {
                          "line": 196,
                          "column": 70
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6592,
                        "end": 6653,
                        "loc": {
                          "start": {
                            "line": 196,
                            "column": 8
                          },
                          "end": {
                            "line": 196,
                            "column": 69
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6592,
                          "end": 6603,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 8
                            },
                            "end": {
                              "line": 196,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6592,
                            "end": 6598,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 8
                              },
                              "end": {
                                "line": 196,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6599,
                            "end": 6603,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 15
                              },
                              "end": {
                                "line": 196,
                                "column": 19
                              }
                            },
                            "name": "emit"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 6604,
                            "end": 6634,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 20
                              },
                              "end": {
                                "line": 196,
                                "column": 50
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6604,
                              "end": 6628,
                              "loc": {
                                "start": {
                                  "line": 196,
                                  "column": 20
                                },
                                "end": {
                                  "line": 196,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6604,
                                "end": 6618,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 34
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6604,
                                  "end": 6611,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 27
                                    }
                                  },
                                  "name": "Object3"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6612,
                                  "end": 6618,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 34
                                    }
                                  },
                                  "name": "Events"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6619,
                                "end": 6628,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 44
                                  }
                                },
                                "name": "Lifecycle"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6629,
                              "end": 6634,
                              "loc": {
                                "start": {
                                  "line": 196,
                                  "column": 45
                                },
                                "end": {
                                  "line": 196,
                                  "column": 50
                                }
                              },
                              "name": "Added"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 6636,
                            "end": 6652,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 52
                              },
                              "end": {
                                "line": 196,
                                "column": 68
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 6638,
                                "end": 6650,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 66
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 6638,
                                  "end": 6644,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 60
                                    }
                                  },
                                  "name": "parent"
                                },
                                "value": {
                                  "type": "ThisExpression",
                                  "start": 6646,
                                  "end": 6650,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 66
                                    }
                                  }
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6663,
                      "end": 6701,
                      "loc": {
                        "start": {
                          "line": 197,
                          "column": 8
                        },
                        "end": {
                          "line": 197,
                          "column": 46
                        }
                      },
                      "expression": {
                        "type": "LogicalExpression",
                        "start": 6663,
                        "end": 6700,
                        "loc": {
                          "start": {
                            "line": 197,
                            "column": 8
                          },
                          "end": {
                            "line": 197,
                            "column": 45
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 6663,
                          "end": 6674,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 8
                            },
                            "end": {
                              "line": 197,
                              "column": 19
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 6664,
                            "end": 6674,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 9
                              },
                              "end": {
                                "line": 197,
                                "column": 19
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 6665,
                              "end": 6674,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 10
                                },
                                "end": {
                                  "line": 197,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6665,
                                "end": 6669,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 14
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6670,
                                "end": 6674,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 19
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            }
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "CallExpression",
                          "start": 6678,
                          "end": 6700,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 23
                            },
                            "end": {
                              "line": 197,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6678,
                            "end": 6698,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 23
                              },
                              "end": {
                                "line": 197,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6678,
                              "end": 6687,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 23
                                },
                                "end": {
                                  "line": 197,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6678,
                                "end": 6682,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6683,
                                "end": 6687,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 32
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6688,
                              "end": 6698,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 33
                                },
                                "end": {
                                  "line": 197,
                                  "column": 43
                                }
                              },
                              "name": "invalidate"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 6711,
      "end": 7438,
      "loc": {
        "start": {
          "line": 201,
          "column": 0
        },
        "end": {
          "line": 218,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 6711,
        "end": 7438,
        "loc": {
          "start": {
            "line": 201,
            "column": 0
          },
          "end": {
            "line": 218,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 6711,
          "end": 6747,
          "loc": {
            "start": {
              "line": 201,
              "column": 0
            },
            "end": {
              "line": 201,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 6711,
            "end": 6735,
            "loc": {
              "start": {
                "line": 201,
                "column": 0
              },
              "end": {
                "line": 201,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 6711,
              "end": 6725,
              "loc": {
                "start": {
                  "line": 201,
                  "column": 0
                },
                "end": {
                  "line": 201,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 6711,
                "end": 6716,
                "loc": {
                  "start": {
                    "line": 201,
                    "column": 0
                  },
                  "end": {
                    "line": 201,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 6717,
                "end": 6725,
                "loc": {
                  "start": {
                    "line": 201,
                    "column": 6
                  },
                  "end": {
                    "line": 201,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 6726,
              "end": 6735,
              "loc": {
                "start": {
                  "line": 201,
                  "column": 15
                },
                "end": {
                  "line": 201,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 6736,
            "end": 6747,
            "loc": {
              "start": {
                "line": 201,
                "column": 25
              },
              "end": {
                "line": 201,
                "column": 36
              }
            },
            "name": "removeAsync"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 6750,
          "end": 7438,
          "loc": {
            "start": {
              "line": 201,
              "column": 39
            },
            "end": {
              "line": 218,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 6736,
            "end": 6747,
            "loc": {
              "start": {
                "line": 201,
                "column": 25
              },
              "end": {
                "line": 201,
                "column": 36
              }
            },
            "name": "removeAsync"
          },
          "generator": false,
          "expression": false,
          "async": true,
          "params": [
            {
              "type": "Identifier",
              "start": 6765,
              "end": 6771,
              "loc": {
                "start": {
                  "line": 201,
                  "column": 54
                },
                "end": {
                  "line": 201,
                  "column": 60
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 6773,
            "end": 7438,
            "loc": {
              "start": {
                "line": 201,
                "column": 62
              },
              "end": {
                "line": 218,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 6779,
                "end": 6842,
                "loc": {
                  "start": {
                    "line": 202,
                    "column": 4
                  },
                  "end": {
                    "line": 202,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 6779,
                  "end": 6841,
                  "loc": {
                    "start": {
                      "line": 202,
                      "column": 4
                    },
                    "end": {
                      "line": 202,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 6779,
                    "end": 6785,
                    "loc": {
                      "start": {
                        "line": 202,
                        "column": 4
                      },
                      "end": {
                        "line": 202,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 6788,
                    "end": 6841,
                    "loc": {
                      "start": {
                        "line": 202,
                        "column": 13
                      },
                      "end": {
                        "line": 202,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 6788,
                      "end": 6808,
                      "loc": {
                        "start": {
                          "line": 202,
                          "column": 13
                        },
                        "end": {
                          "line": 202,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 6788,
                        "end": 6804,
                        "loc": {
                          "start": {
                            "line": 202,
                            "column": 13
                          },
                          "end": {
                            "line": 202,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6788,
                          "end": 6797,
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 13
                            },
                            "end": {
                              "line": 202,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6798,
                          "end": 6804,
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 23
                            },
                            "end": {
                              "line": 202,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 6807,
                        "end": 6808,
                        "loc": {
                          "start": {
                            "line": 202,
                            "column": 32
                          },
                          "end": {
                            "line": 202,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 6811,
                      "end": 6832,
                      "loc": {
                        "start": {
                          "line": 202,
                          "column": 36
                        },
                        "end": {
                          "line": 202,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 6811,
                        "end": 6821,
                        "loc": {
                          "start": {
                            "line": 202,
                            "column": 36
                          },
                          "end": {
                            "line": 202,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6811,
                          "end": 6816,
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 36
                            },
                            "end": {
                              "line": 202,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6817,
                          "end": 6821,
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 42
                            },
                            "end": {
                              "line": 202,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 6822,
                          "end": 6831,
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 47
                            },
                            "end": {
                              "line": 202,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 6835,
                      "end": 6841,
                      "loc": {
                        "start": {
                          "line": 202,
                          "column": 60
                        },
                        "end": {
                          "line": 202,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 6847,
                "end": 6953,
                "loc": {
                  "start": {
                    "line": 203,
                    "column": 4
                  },
                  "end": {
                    "line": 205,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 6851,
                  "end": 6872,
                  "loc": {
                    "start": {
                      "line": 203,
                      "column": 8
                    },
                    "end": {
                      "line": 203,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 6851,
                    "end": 6864,
                    "loc": {
                      "start": {
                        "line": 203,
                        "column": 8
                      },
                      "end": {
                        "line": 203,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 6851,
                      "end": 6856,
                      "loc": {
                        "start": {
                          "line": 203,
                          "column": 8
                        },
                        "end": {
                          "line": 203,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6857,
                      "end": 6864,
                      "loc": {
                        "start": {
                          "line": 203,
                          "column": 14
                        },
                        "end": {
                          "line": 203,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 6865,
                      "end": 6871,
                      "loc": {
                        "start": {
                          "line": 203,
                          "column": 22
                        },
                        "end": {
                          "line": 203,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6874,
                  "end": 6953,
                  "loc": {
                    "start": {
                      "line": 203,
                      "column": 31
                    },
                    "end": {
                      "line": 205,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6884,
                      "end": 6947,
                      "loc": {
                        "start": {
                          "line": 204,
                          "column": 8
                        },
                        "end": {
                          "line": 204,
                          "column": 71
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6891,
                        "end": 6946,
                        "loc": {
                          "start": {
                            "line": 204,
                            "column": 15
                          },
                          "end": {
                            "line": 204,
                            "column": 70
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6891,
                          "end": 6902,
                          "loc": {
                            "start": {
                              "line": 204,
                              "column": 15
                            },
                            "end": {
                              "line": 204,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6891,
                            "end": 6898,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 15
                              },
                              "end": {
                                "line": 204,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6899,
                            "end": 6902,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 23
                              },
                              "end": {
                                "line": 204,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6903,
                            "end": 6945,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 27
                              },
                              "end": {
                                "line": 204,
                                "column": 69
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6903,
                              "end": 6913,
                              "loc": {
                                "start": {
                                  "line": 204,
                                  "column": 27
                                },
                                "end": {
                                  "line": 204,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6903,
                                "end": 6909,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6910,
                                "end": 6913,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 6914,
                                "end": 6944,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 68
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 6914,
                                    "end": 6918,
                                    "loc": {
                                      "start": {
                                        "line": 204,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 204,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 6922,
                                  "end": 6944,
                                  "loc": {
                                    "start": {
                                      "line": 204,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 204,
                                      "column": 68
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6922,
                                    "end": 6938,
                                    "loc": {
                                      "start": {
                                        "line": 204,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 204,
                                        "column": 62
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6922,
                                      "end": 6926,
                                      "loc": {
                                        "start": {
                                          "line": 204,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 204,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6927,
                                      "end": 6938,
                                      "loc": {
                                        "start": {
                                          "line": 204,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 204,
                                          "column": 62
                                        }
                                      },
                                      "name": "removeAsync"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 6939,
                                      "end": 6943,
                                      "loc": {
                                        "start": {
                                          "line": 204,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 204,
                                          "column": 67
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 6959,
                "end": 7436,
                "loc": {
                  "start": {
                    "line": 207,
                    "column": 4
                  },
                  "end": {
                    "line": 217,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 6963,
                  "end": 6995,
                  "loc": {
                    "start": {
                      "line": 207,
                      "column": 8
                    },
                    "end": {
                      "line": 207,
                      "column": 40
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 6963,
                    "end": 6969,
                    "loc": {
                      "start": {
                        "line": 207,
                        "column": 8
                      },
                      "end": {
                        "line": 207,
                        "column": 14
                      }
                    },
                    "name": "object"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "MemberExpression",
                    "start": 6981,
                    "end": 6995,
                    "loc": {
                      "start": {
                        "line": 207,
                        "column": 26
                      },
                      "end": {
                        "line": 207,
                        "column": 40
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 6981,
                      "end": 6986,
                      "loc": {
                        "start": {
                          "line": 207,
                          "column": 26
                        },
                        "end": {
                          "line": 207,
                          "column": 31
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6987,
                      "end": 6995,
                      "loc": {
                        "start": {
                          "line": 207,
                          "column": 32
                        },
                        "end": {
                          "line": 207,
                          "column": 40
                        }
                      },
                      "name": "Object3D"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6997,
                  "end": 7436,
                  "loc": {
                    "start": {
                      "line": 207,
                      "column": 42
                    },
                    "end": {
                      "line": 217,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 7007,
                      "end": 7049,
                      "loc": {
                        "start": {
                          "line": 208,
                          "column": 8
                        },
                        "end": {
                          "line": 208,
                          "column": 50
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7011,
                          "end": 7048,
                          "loc": {
                            "start": {
                              "line": 208,
                              "column": 12
                            },
                            "end": {
                              "line": 208,
                              "column": 49
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7011,
                            "end": 7016,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 12
                              },
                              "end": {
                                "line": 208,
                                "column": 17
                              }
                            },
                            "name": "index"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7019,
                            "end": 7048,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 20
                              },
                              "end": {
                                "line": 208,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7019,
                              "end": 7040,
                              "loc": {
                                "start": {
                                  "line": 208,
                                  "column": 20
                                },
                                "end": {
                                  "line": 208,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 7019,
                                "end": 7032,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7019,
                                  "end": 7023,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 24
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7024,
                                  "end": 7032,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 33
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7033,
                                "end": 7040,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 41
                                  }
                                },
                                "name": "indexOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7041,
                                "end": 7047,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 48
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 7058,
                      "end": 7430,
                      "loc": {
                        "start": {
                          "line": 209,
                          "column": 8
                        },
                        "end": {
                          "line": 216,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7062,
                        "end": 7074,
                        "loc": {
                          "start": {
                            "line": 209,
                            "column": 12
                          },
                          "end": {
                            "line": 209,
                            "column": 24
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 7062,
                          "end": 7067,
                          "loc": {
                            "start": {
                              "line": 209,
                              "column": 12
                            },
                            "end": {
                              "line": 209,
                              "column": 17
                            }
                          },
                          "name": "index"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 7072,
                          "end": 7074,
                          "loc": {
                            "start": {
                              "line": 209,
                              "column": 22
                            },
                            "end": {
                              "line": 209,
                              "column": 24
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 7073,
                            "end": 7074,
                            "loc": {
                              "start": {
                                "line": 209,
                                "column": 23
                              },
                              "end": {
                                "line": 209,
                                "column": 24
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 7076,
                        "end": 7430,
                        "loc": {
                          "start": {
                            "line": 209,
                            "column": 26
                          },
                          "end": {
                            "line": 216,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 7090,
                            "end": 7164,
                            "loc": {
                              "start": {
                                "line": 210,
                                "column": 12
                              },
                              "end": {
                                "line": 210,
                                "column": 86
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 7090,
                              "end": 7163,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 12
                                },
                                "end": {
                                  "line": 210,
                                  "column": 85
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 7096,
                                "end": 7163,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 85
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7096,
                                  "end": 7105,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7096,
                                    "end": 7100,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7101,
                                    "end": 7105,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 27
                                      }
                                    },
                                    "name": "emit"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 7106,
                                    "end": 7143,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7106,
                                      "end": 7130,
                                      "loc": {
                                        "start": {
                                          "line": 210,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 210,
                                          "column": 52
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 7106,
                                        "end": 7120,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 42
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7106,
                                          "end": 7113,
                                          "loc": {
                                            "start": {
                                              "line": 210,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 210,
                                              "column": 35
                                            }
                                          },
                                          "name": "Object3"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7114,
                                          "end": 7120,
                                          "loc": {
                                            "start": {
                                              "line": 210,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 210,
                                              "column": 42
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7121,
                                        "end": 7130,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 52
                                          }
                                        },
                                        "name": "Lifecycle"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7131,
                                      "end": 7143,
                                      "loc": {
                                        "start": {
                                          "line": 210,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 210,
                                          "column": 65
                                        }
                                      },
                                      "name": "ChildRemoved"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "ObjectExpression",
                                    "start": 7145,
                                    "end": 7162,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 84
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "Property",
                                        "start": 7147,
                                        "end": 7160,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 82
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 7147,
                                          "end": 7152,
                                          "loc": {
                                            "start": {
                                              "line": 210,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 210,
                                              "column": 74
                                            }
                                          },
                                          "name": "child"
                                        },
                                        "value": {
                                          "type": "Identifier",
                                          "start": 7154,
                                          "end": 7160,
                                          "loc": {
                                            "start": {
                                              "line": 210,
                                              "column": 76
                                            },
                                            "end": {
                                              "line": 210,
                                              "column": 82
                                            }
                                          },
                                          "name": "object"
                                        },
                                        "kind": "init"
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7177,
                            "end": 7247,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 12
                              },
                              "end": {
                                "line": 211,
                                "column": 82
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 7177,
                              "end": 7246,
                              "loc": {
                                "start": {
                                  "line": 211,
                                  "column": 12
                                },
                                "end": {
                                  "line": 211,
                                  "column": 81
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 7183,
                                "end": 7246,
                                "loc": {
                                  "start": {
                                    "line": 211,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 211,
                                    "column": 81
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7183,
                                  "end": 7194,
                                  "loc": {
                                    "start": {
                                      "line": 211,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 211,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 7183,
                                    "end": 7189,
                                    "loc": {
                                      "start": {
                                        "line": 211,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 211,
                                        "column": 24
                                      }
                                    },
                                    "name": "object"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7190,
                                    "end": 7194,
                                    "loc": {
                                      "start": {
                                        "line": 211,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 211,
                                        "column": 29
                                      }
                                    },
                                    "name": "emit"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 7195,
                                    "end": 7227,
                                    "loc": {
                                      "start": {
                                        "line": 211,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 211,
                                        "column": 62
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7195,
                                      "end": 7219,
                                      "loc": {
                                        "start": {
                                          "line": 211,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 211,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 7195,
                                        "end": 7209,
                                        "loc": {
                                          "start": {
                                            "line": 211,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 211,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7195,
                                          "end": 7202,
                                          "loc": {
                                            "start": {
                                              "line": 211,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 211,
                                              "column": 37
                                            }
                                          },
                                          "name": "Object3"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7203,
                                          "end": 7209,
                                          "loc": {
                                            "start": {
                                              "line": 211,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 211,
                                              "column": 44
                                            }
                                          },
                                          "name": "Events"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7210,
                                        "end": 7219,
                                        "loc": {
                                          "start": {
                                            "line": 211,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 211,
                                            "column": 54
                                          }
                                        },
                                        "name": "Lifecycle"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7220,
                                      "end": 7227,
                                      "loc": {
                                        "start": {
                                          "line": 211,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 211,
                                          "column": 62
                                        }
                                      },
                                      "name": "Removed"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "ObjectExpression",
                                    "start": 7229,
                                    "end": 7245,
                                    "loc": {
                                      "start": {
                                        "line": 211,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 211,
                                        "column": 80
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "Property",
                                        "start": 7231,
                                        "end": 7243,
                                        "loc": {
                                          "start": {
                                            "line": 211,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 211,
                                            "column": 78
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 7231,
                                          "end": 7237,
                                          "loc": {
                                            "start": {
                                              "line": 211,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 211,
                                              "column": 72
                                            }
                                          },
                                          "name": "parent"
                                        },
                                        "value": {
                                          "type": "ThisExpression",
                                          "start": 7239,
                                          "end": 7243,
                                          "loc": {
                                            "start": {
                                              "line": 211,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 211,
                                              "column": 78
                                            }
                                          }
                                        },
                                        "kind": "init"
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7260,
                            "end": 7291,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 12
                              },
                              "end": {
                                "line": 212,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7260,
                              "end": 7290,
                              "loc": {
                                "start": {
                                  "line": 212,
                                  "column": 12
                                },
                                "end": {
                                  "line": 212,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7260,
                                "end": 7280,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 7260,
                                  "end": 7273,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7260,
                                    "end": 7264,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7265,
                                    "end": 7273,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 25
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7274,
                                  "end": 7280,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 32
                                    }
                                  },
                                  "name": "splice"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 7281,
                                  "end": 7286,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 38
                                    }
                                  },
                                  "name": "index"
                                },
                                {
                                  "type": "Literal",
                                  "start": 7288,
                                  "end": 7289,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 41
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7304,
                            "end": 7325,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 12
                              },
                              "end": {
                                "line": 213,
                                "column": 33
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 7304,
                              "end": 7324,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 12
                                },
                                "end": {
                                  "line": 213,
                                  "column": 32
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 7304,
                                "end": 7317,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7304,
                                  "end": 7310,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 18
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7311,
                                  "end": 7317,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 25
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 7320,
                                "end": 7324,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 32
                                  }
                                },
                                "value": null,
                                "rawValue": null,
                                "raw": "null"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7338,
                            "end": 7369,
                            "loc": {
                              "start": {
                                "line": 214,
                                "column": 12
                              },
                              "end": {
                                "line": 214,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7338,
                              "end": 7368,
                              "loc": {
                                "start": {
                                  "line": 214,
                                  "column": 12
                                },
                                "end": {
                                  "line": 214,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 7338,
                                "end": 7354,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 28
                                  }
                                },
                                "name": "updateReferences"
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 7355,
                                  "end": 7359,
                                  "loc": {
                                    "start": {
                                      "line": 214,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 214,
                                      "column": 33
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 7361,
                                  "end": 7367,
                                  "loc": {
                                    "start": {
                                      "line": 214,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 214,
                                      "column": 41
                                    }
                                  },
                                  "name": "object"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7382,
                            "end": 7420,
                            "loc": {
                              "start": {
                                "line": 215,
                                "column": 12
                              },
                              "end": {
                                "line": 215,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "LogicalExpression",
                              "start": 7382,
                              "end": 7419,
                              "loc": {
                                "start": {
                                  "line": 215,
                                  "column": 12
                                },
                                "end": {
                                  "line": 215,
                                  "column": 49
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 7382,
                                "end": 7393,
                                "loc": {
                                  "start": {
                                    "line": 215,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 215,
                                    "column": 23
                                  }
                                },
                                "operator": "!",
                                "prefix": true,
                                "argument": {
                                  "type": "UnaryExpression",
                                  "start": 7383,
                                  "end": 7393,
                                  "loc": {
                                    "start": {
                                      "line": 215,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 215,
                                      "column": 23
                                    }
                                  },
                                  "operator": "!",
                                  "prefix": true,
                                  "argument": {
                                    "type": "MemberExpression",
                                    "start": 7384,
                                    "end": 7393,
                                    "loc": {
                                      "start": {
                                        "line": 215,
                                        "column": 14
                                      },
                                      "end": {
                                        "line": 215,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7384,
                                      "end": 7388,
                                      "loc": {
                                        "start": {
                                          "line": 215,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 215,
                                          "column": 18
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7389,
                                      "end": 7393,
                                      "loc": {
                                        "start": {
                                          "line": 215,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 215,
                                          "column": 23
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  }
                                }
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 7397,
                                "end": 7419,
                                "loc": {
                                  "start": {
                                    "line": 215,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 215,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7397,
                                  "end": 7417,
                                  "loc": {
                                    "start": {
                                      "line": 215,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 215,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 7397,
                                    "end": 7406,
                                    "loc": {
                                      "start": {
                                        "line": 215,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 215,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7397,
                                      "end": 7401,
                                      "loc": {
                                        "start": {
                                          "line": 215,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 215,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7402,
                                      "end": 7406,
                                      "loc": {
                                        "start": {
                                          "line": 215,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 215,
                                          "column": 36
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7407,
                                    "end": 7417,
                                    "loc": {
                                      "start": {
                                        "line": 215,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 215,
                                        "column": 47
                                      }
                                    },
                                    "name": "invalidate"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 7440,
      "end": 8139,
      "loc": {
        "start": {
          "line": 220,
          "column": 0
        },
        "end": {
          "line": 237,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 7440,
        "end": 8139,
        "loc": {
          "start": {
            "line": 220,
            "column": 0
          },
          "end": {
            "line": 237,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 7440,
          "end": 7471,
          "loc": {
            "start": {
              "line": 220,
              "column": 0
            },
            "end": {
              "line": 220,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 7440,
            "end": 7464,
            "loc": {
              "start": {
                "line": 220,
                "column": 0
              },
              "end": {
                "line": 220,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 7440,
              "end": 7454,
              "loc": {
                "start": {
                  "line": 220,
                  "column": 0
                },
                "end": {
                  "line": 220,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 7440,
                "end": 7445,
                "loc": {
                  "start": {
                    "line": 220,
                    "column": 0
                  },
                  "end": {
                    "line": 220,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 7446,
                "end": 7454,
                "loc": {
                  "start": {
                    "line": 220,
                    "column": 6
                  },
                  "end": {
                    "line": 220,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 7455,
              "end": 7464,
              "loc": {
                "start": {
                  "line": 220,
                  "column": 15
                },
                "end": {
                  "line": 220,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 7465,
            "end": 7471,
            "loc": {
              "start": {
                "line": 220,
                "column": 25
              },
              "end": {
                "line": 220,
                "column": 31
              }
            },
            "name": "remove"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 7474,
          "end": 8139,
          "loc": {
            "start": {
              "line": 220,
              "column": 34
            },
            "end": {
              "line": 237,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 7465,
            "end": 7471,
            "loc": {
              "start": {
                "line": 220,
                "column": 25
              },
              "end": {
                "line": 220,
                "column": 31
              }
            },
            "name": "remove"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 7483,
              "end": 7489,
              "loc": {
                "start": {
                  "line": 220,
                  "column": 43
                },
                "end": {
                  "line": 220,
                  "column": 49
                }
              },
              "name": "object"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 7491,
            "end": 8139,
            "loc": {
              "start": {
                "line": 220,
                "column": 51
              },
              "end": {
                "line": 237,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 7497,
                "end": 7560,
                "loc": {
                  "start": {
                    "line": 221,
                    "column": 4
                  },
                  "end": {
                    "line": 221,
                    "column": 67
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 7497,
                  "end": 7559,
                  "loc": {
                    "start": {
                      "line": 221,
                      "column": 4
                    },
                    "end": {
                      "line": 221,
                      "column": 66
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 7497,
                    "end": 7503,
                    "loc": {
                      "start": {
                        "line": 221,
                        "column": 4
                      },
                      "end": {
                        "line": 221,
                        "column": 10
                      }
                    },
                    "name": "object"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 7506,
                    "end": 7559,
                    "loc": {
                      "start": {
                        "line": 221,
                        "column": 13
                      },
                      "end": {
                        "line": 221,
                        "column": 66
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 7506,
                      "end": 7526,
                      "loc": {
                        "start": {
                          "line": 221,
                          "column": 13
                        },
                        "end": {
                          "line": 221,
                          "column": 33
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 7506,
                        "end": 7522,
                        "loc": {
                          "start": {
                            "line": 221,
                            "column": 13
                          },
                          "end": {
                            "line": 221,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 7506,
                          "end": 7515,
                          "loc": {
                            "start": {
                              "line": 221,
                              "column": 13
                            },
                            "end": {
                              "line": 221,
                              "column": 22
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7516,
                          "end": 7522,
                          "loc": {
                            "start": {
                              "line": 221,
                              "column": 23
                            },
                            "end": {
                              "line": 221,
                              "column": 29
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 7525,
                        "end": 7526,
                        "loc": {
                          "start": {
                            "line": 221,
                            "column": 32
                          },
                          "end": {
                            "line": 221,
                            "column": 33
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 7529,
                      "end": 7550,
                      "loc": {
                        "start": {
                          "line": 221,
                          "column": 36
                        },
                        "end": {
                          "line": 221,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 7529,
                        "end": 7539,
                        "loc": {
                          "start": {
                            "line": 221,
                            "column": 36
                          },
                          "end": {
                            "line": 221,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 7529,
                          "end": 7534,
                          "loc": {
                            "start": {
                              "line": 221,
                              "column": 36
                            },
                            "end": {
                              "line": 221,
                              "column": 41
                            }
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7535,
                          "end": 7539,
                          "loc": {
                            "start": {
                              "line": 221,
                              "column": 42
                            },
                            "end": {
                              "line": 221,
                              "column": 46
                            }
                          },
                          "name": "from"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 7540,
                          "end": 7549,
                          "loc": {
                            "start": {
                              "line": 221,
                              "column": 47
                            },
                            "end": {
                              "line": 221,
                              "column": 56
                            }
                          },
                          "name": "arguments"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 7553,
                      "end": 7559,
                      "loc": {
                        "start": {
                          "line": 221,
                          "column": 60
                        },
                        "end": {
                          "line": 221,
                          "column": 66
                        }
                      },
                      "name": "object"
                    }
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 7565,
                "end": 7666,
                "loc": {
                  "start": {
                    "line": 222,
                    "column": 4
                  },
                  "end": {
                    "line": 224,
                    "column": 5
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 7569,
                  "end": 7590,
                  "loc": {
                    "start": {
                      "line": 222,
                      "column": 8
                    },
                    "end": {
                      "line": 222,
                      "column": 29
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 7569,
                    "end": 7582,
                    "loc": {
                      "start": {
                        "line": 222,
                        "column": 8
                      },
                      "end": {
                        "line": 222,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 7569,
                      "end": 7574,
                      "loc": {
                        "start": {
                          "line": 222,
                          "column": 8
                        },
                        "end": {
                          "line": 222,
                          "column": 13
                        }
                      },
                      "name": "Array"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 7575,
                      "end": 7582,
                      "loc": {
                        "start": {
                          "line": 222,
                          "column": 14
                        },
                        "end": {
                          "line": 222,
                          "column": 21
                        }
                      },
                      "name": "isArray"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 7583,
                      "end": 7589,
                      "loc": {
                        "start": {
                          "line": 222,
                          "column": 22
                        },
                        "end": {
                          "line": 222,
                          "column": 28
                        }
                      },
                      "name": "object"
                    }
                  ]
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 7592,
                  "end": 7666,
                  "loc": {
                    "start": {
                      "line": 222,
                      "column": 31
                    },
                    "end": {
                      "line": 224,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 7602,
                      "end": 7660,
                      "loc": {
                        "start": {
                          "line": 223,
                          "column": 8
                        },
                        "end": {
                          "line": 223,
                          "column": 66
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 7609,
                        "end": 7659,
                        "loc": {
                          "start": {
                            "line": 223,
                            "column": 15
                          },
                          "end": {
                            "line": 223,
                            "column": 65
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7609,
                          "end": 7620,
                          "loc": {
                            "start": {
                              "line": 223,
                              "column": 15
                            },
                            "end": {
                              "line": 223,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7609,
                            "end": 7616,
                            "loc": {
                              "start": {
                                "line": 223,
                                "column": 15
                              },
                              "end": {
                                "line": 223,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7617,
                            "end": 7620,
                            "loc": {
                              "start": {
                                "line": 223,
                                "column": 23
                              },
                              "end": {
                                "line": 223,
                                "column": 26
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 7621,
                            "end": 7658,
                            "loc": {
                              "start": {
                                "line": 223,
                                "column": 27
                              },
                              "end": {
                                "line": 223,
                                "column": 64
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7621,
                              "end": 7631,
                              "loc": {
                                "start": {
                                  "line": 223,
                                  "column": 27
                                },
                                "end": {
                                  "line": 223,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7621,
                                "end": 7627,
                                "loc": {
                                  "start": {
                                    "line": 223,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 223,
                                    "column": 33
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7628,
                                "end": 7631,
                                "loc": {
                                  "start": {
                                    "line": 223,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 223,
                                    "column": 37
                                  }
                                },
                                "name": "map"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 7632,
                                "end": 7657,
                                "loc": {
                                  "start": {
                                    "line": 223,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 223,
                                    "column": 63
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 7632,
                                    "end": 7636,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 42
                                      }
                                    },
                                    "name": "item"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 7640,
                                  "end": 7657,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 63
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 7640,
                                    "end": 7651,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 57
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7640,
                                      "end": 7644,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7645,
                                      "end": 7651,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 57
                                        }
                                      },
                                      "name": "remove"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 7652,
                                      "end": 7656,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 62
                                        }
                                      },
                                      "name": "item"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 7672,
                "end": 8137,
                "loc": {
                  "start": {
                    "line": 226,
                    "column": 4
                  },
                  "end": {
                    "line": 236,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 7676,
                  "end": 7708,
                  "loc": {
                    "start": {
                      "line": 226,
                      "column": 8
                    },
                    "end": {
                      "line": 226,
                      "column": 40
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 7676,
                    "end": 7682,
                    "loc": {
                      "start": {
                        "line": 226,
                        "column": 8
                      },
                      "end": {
                        "line": 226,
                        "column": 14
                      }
                    },
                    "name": "object"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "MemberExpression",
                    "start": 7694,
                    "end": 7708,
                    "loc": {
                      "start": {
                        "line": 226,
                        "column": 26
                      },
                      "end": {
                        "line": 226,
                        "column": 40
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 7694,
                      "end": 7699,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 26
                        },
                        "end": {
                          "line": 226,
                          "column": 31
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 7700,
                      "end": 7708,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 32
                        },
                        "end": {
                          "line": 226,
                          "column": 40
                        }
                      },
                      "name": "Object3D"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 7710,
                  "end": 8137,
                  "loc": {
                    "start": {
                      "line": 226,
                      "column": 42
                    },
                    "end": {
                      "line": 236,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 7720,
                      "end": 7762,
                      "loc": {
                        "start": {
                          "line": 227,
                          "column": 8
                        },
                        "end": {
                          "line": 227,
                          "column": 50
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7724,
                          "end": 7761,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 12
                            },
                            "end": {
                              "line": 227,
                              "column": 49
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7724,
                            "end": 7729,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 12
                              },
                              "end": {
                                "line": 227,
                                "column": 17
                              }
                            },
                            "name": "index"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7732,
                            "end": 7761,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 20
                              },
                              "end": {
                                "line": 227,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7732,
                              "end": 7753,
                              "loc": {
                                "start": {
                                  "line": 227,
                                  "column": 20
                                },
                                "end": {
                                  "line": 227,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 7732,
                                "end": 7745,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7732,
                                  "end": 7736,
                                  "loc": {
                                    "start": {
                                      "line": 227,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 227,
                                      "column": 24
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7737,
                                  "end": 7745,
                                  "loc": {
                                    "start": {
                                      "line": 227,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 227,
                                      "column": 33
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7746,
                                "end": 7753,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 41
                                  }
                                },
                                "name": "indexOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7754,
                                "end": 7760,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 48
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 7771,
                      "end": 8131,
                      "loc": {
                        "start": {
                          "line": 228,
                          "column": 8
                        },
                        "end": {
                          "line": 235,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7775,
                        "end": 7787,
                        "loc": {
                          "start": {
                            "line": 228,
                            "column": 12
                          },
                          "end": {
                            "line": 228,
                            "column": 24
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 7775,
                          "end": 7780,
                          "loc": {
                            "start": {
                              "line": 228,
                              "column": 12
                            },
                            "end": {
                              "line": 228,
                              "column": 17
                            }
                          },
                          "name": "index"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 7785,
                          "end": 7787,
                          "loc": {
                            "start": {
                              "line": 228,
                              "column": 22
                            },
                            "end": {
                              "line": 228,
                              "column": 24
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 7786,
                            "end": 7787,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 23
                              },
                              "end": {
                                "line": 228,
                                "column": 24
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 7789,
                        "end": 8131,
                        "loc": {
                          "start": {
                            "line": 228,
                            "column": 26
                          },
                          "end": {
                            "line": 235,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 7803,
                            "end": 7871,
                            "loc": {
                              "start": {
                                "line": 229,
                                "column": 12
                              },
                              "end": {
                                "line": 229,
                                "column": 80
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7803,
                              "end": 7870,
                              "loc": {
                                "start": {
                                  "line": 229,
                                  "column": 12
                                },
                                "end": {
                                  "line": 229,
                                  "column": 79
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7803,
                                "end": 7812,
                                "loc": {
                                  "start": {
                                    "line": 229,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 229,
                                    "column": 21
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7803,
                                  "end": 7807,
                                  "loc": {
                                    "start": {
                                      "line": 229,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 229,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7808,
                                  "end": 7812,
                                  "loc": {
                                    "start": {
                                      "line": 229,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 229,
                                      "column": 21
                                    }
                                  },
                                  "name": "emit"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 7813,
                                  "end": 7850,
                                  "loc": {
                                    "start": {
                                      "line": 229,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 229,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 7813,
                                    "end": 7837,
                                    "loc": {
                                      "start": {
                                        "line": 229,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 229,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7813,
                                      "end": 7827,
                                      "loc": {
                                        "start": {
                                          "line": 229,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 229,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7813,
                                        "end": 7820,
                                        "loc": {
                                          "start": {
                                            "line": 229,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 229,
                                            "column": 29
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7821,
                                        "end": 7827,
                                        "loc": {
                                          "start": {
                                            "line": 229,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 229,
                                            "column": 36
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7828,
                                      "end": 7837,
                                      "loc": {
                                        "start": {
                                          "line": 229,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 229,
                                          "column": 46
                                        }
                                      },
                                      "name": "Lifecycle"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7838,
                                    "end": 7850,
                                    "loc": {
                                      "start": {
                                        "line": 229,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 229,
                                        "column": 59
                                      }
                                    },
                                    "name": "ChildRemoved"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "ObjectExpression",
                                  "start": 7852,
                                  "end": 7869,
                                  "loc": {
                                    "start": {
                                      "line": 229,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 229,
                                      "column": 78
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 7854,
                                      "end": 7867,
                                      "loc": {
                                        "start": {
                                          "line": 229,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 229,
                                          "column": 76
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7854,
                                        "end": 7859,
                                        "loc": {
                                          "start": {
                                            "line": 229,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 229,
                                            "column": 68
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "value": {
                                        "type": "Identifier",
                                        "start": 7861,
                                        "end": 7867,
                                        "loc": {
                                          "start": {
                                            "line": 229,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 229,
                                            "column": 76
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7884,
                            "end": 7948,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 12
                              },
                              "end": {
                                "line": 230,
                                "column": 76
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7884,
                              "end": 7947,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 12
                                },
                                "end": {
                                  "line": 230,
                                  "column": 75
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7884,
                                "end": 7895,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7884,
                                  "end": 7890,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 18
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7891,
                                  "end": 7895,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 23
                                    }
                                  },
                                  "name": "emit"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 7896,
                                  "end": 7928,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 7896,
                                    "end": 7920,
                                    "loc": {
                                      "start": {
                                        "line": 230,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 230,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7896,
                                      "end": 7910,
                                      "loc": {
                                        "start": {
                                          "line": 230,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 230,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7896,
                                        "end": 7903,
                                        "loc": {
                                          "start": {
                                            "line": 230,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 230,
                                            "column": 31
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7904,
                                        "end": 7910,
                                        "loc": {
                                          "start": {
                                            "line": 230,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 230,
                                            "column": 38
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7911,
                                      "end": 7920,
                                      "loc": {
                                        "start": {
                                          "line": 230,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 230,
                                          "column": 48
                                        }
                                      },
                                      "name": "Lifecycle"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7921,
                                    "end": 7928,
                                    "loc": {
                                      "start": {
                                        "line": 230,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 230,
                                        "column": 56
                                      }
                                    },
                                    "name": "Removed"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "ObjectExpression",
                                  "start": 7930,
                                  "end": 7946,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 74
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 7932,
                                      "end": 7944,
                                      "loc": {
                                        "start": {
                                          "line": 230,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 230,
                                          "column": 72
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7932,
                                        "end": 7938,
                                        "loc": {
                                          "start": {
                                            "line": 230,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 230,
                                            "column": 66
                                          }
                                        },
                                        "name": "parent"
                                      },
                                      "value": {
                                        "type": "ThisExpression",
                                        "start": 7940,
                                        "end": 7944,
                                        "loc": {
                                          "start": {
                                            "line": 230,
                                            "column": 68
                                          },
                                          "end": {
                                            "line": 230,
                                            "column": 72
                                          }
                                        }
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7961,
                            "end": 7992,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 12
                              },
                              "end": {
                                "line": 231,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7961,
                              "end": 7991,
                              "loc": {
                                "start": {
                                  "line": 231,
                                  "column": 12
                                },
                                "end": {
                                  "line": 231,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7961,
                                "end": 7981,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 7961,
                                  "end": 7974,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7961,
                                    "end": 7965,
                                    "loc": {
                                      "start": {
                                        "line": 231,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 231,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7966,
                                    "end": 7974,
                                    "loc": {
                                      "start": {
                                        "line": 231,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 231,
                                        "column": 25
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7975,
                                  "end": 7981,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 32
                                    }
                                  },
                                  "name": "splice"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 7982,
                                  "end": 7987,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 38
                                    }
                                  },
                                  "name": "index"
                                },
                                {
                                  "type": "Literal",
                                  "start": 7989,
                                  "end": 7990,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 41
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8005,
                            "end": 8026,
                            "loc": {
                              "start": {
                                "line": 232,
                                "column": 12
                              },
                              "end": {
                                "line": 232,
                                "column": 33
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 8005,
                              "end": 8025,
                              "loc": {
                                "start": {
                                  "line": 232,
                                  "column": 12
                                },
                                "end": {
                                  "line": 232,
                                  "column": 32
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 8005,
                                "end": 8018,
                                "loc": {
                                  "start": {
                                    "line": 232,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 232,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8005,
                                  "end": 8011,
                                  "loc": {
                                    "start": {
                                      "line": 232,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 232,
                                      "column": 18
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8012,
                                  "end": 8018,
                                  "loc": {
                                    "start": {
                                      "line": 232,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 232,
                                      "column": 25
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 8021,
                                "end": 8025,
                                "loc": {
                                  "start": {
                                    "line": 232,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 232,
                                    "column": 32
                                  }
                                },
                                "value": null,
                                "rawValue": null,
                                "raw": "null"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8039,
                            "end": 8070,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 12
                              },
                              "end": {
                                "line": 233,
                                "column": 43
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 8039,
                              "end": 8069,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 12
                                },
                                "end": {
                                  "line": 233,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 8039,
                                "end": 8055,
                                "loc": {
                                  "start": {
                                    "line": 233,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 233,
                                    "column": 28
                                  }
                                },
                                "name": "updateReferences"
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 8056,
                                  "end": 8060,
                                  "loc": {
                                    "start": {
                                      "line": 233,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 233,
                                      "column": 33
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 8062,
                                  "end": 8068,
                                  "loc": {
                                    "start": {
                                      "line": 233,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 233,
                                      "column": 41
                                    }
                                  },
                                  "name": "object"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8083,
                            "end": 8121,
                            "loc": {
                              "start": {
                                "line": 234,
                                "column": 12
                              },
                              "end": {
                                "line": 234,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "LogicalExpression",
                              "start": 8083,
                              "end": 8120,
                              "loc": {
                                "start": {
                                  "line": 234,
                                  "column": 12
                                },
                                "end": {
                                  "line": 234,
                                  "column": 49
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 8083,
                                "end": 8094,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 23
                                  }
                                },
                                "operator": "!",
                                "prefix": true,
                                "argument": {
                                  "type": "UnaryExpression",
                                  "start": 8084,
                                  "end": 8094,
                                  "loc": {
                                    "start": {
                                      "line": 234,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 234,
                                      "column": 23
                                    }
                                  },
                                  "operator": "!",
                                  "prefix": true,
                                  "argument": {
                                    "type": "MemberExpression",
                                    "start": 8085,
                                    "end": 8094,
                                    "loc": {
                                      "start": {
                                        "line": 234,
                                        "column": 14
                                      },
                                      "end": {
                                        "line": 234,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8085,
                                      "end": 8089,
                                      "loc": {
                                        "start": {
                                          "line": 234,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 234,
                                          "column": 18
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8090,
                                      "end": 8094,
                                      "loc": {
                                        "start": {
                                          "line": 234,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 234,
                                          "column": 23
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  }
                                }
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 8098,
                                "end": 8120,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8098,
                                  "end": 8118,
                                  "loc": {
                                    "start": {
                                      "line": 234,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 234,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8098,
                                    "end": 8107,
                                    "loc": {
                                      "start": {
                                        "line": 234,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 234,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8098,
                                      "end": 8102,
                                      "loc": {
                                        "start": {
                                          "line": 234,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 234,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8103,
                                      "end": 8107,
                                      "loc": {
                                        "start": {
                                          "line": 234,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 234,
                                          "column": 36
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8108,
                                    "end": 8118,
                                    "loc": {
                                      "start": {
                                        "line": 234,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 234,
                                        "column": 47
                                      }
                                    },
                                    "name": "invalidate"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                },
                "alternate": null
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 8141,
      "end": 8248,
      "loc": {
        "start": {
          "line": 239,
          "column": 0
        },
        "end": {
          "line": 242,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 8141,
        "end": 8248,
        "loc": {
          "start": {
            "line": 239,
            "column": 0
          },
          "end": {
            "line": 242,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 8141,
          "end": 8184,
          "loc": {
            "start": {
              "line": 239,
              "column": 0
            },
            "end": {
              "line": 239,
              "column": 43
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 8141,
            "end": 8165,
            "loc": {
              "start": {
                "line": 239,
                "column": 0
              },
              "end": {
                "line": 239,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 8141,
              "end": 8155,
              "loc": {
                "start": {
                  "line": 239,
                  "column": 0
                },
                "end": {
                  "line": 239,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 8141,
                "end": 8146,
                "loc": {
                  "start": {
                    "line": 239,
                    "column": 0
                  },
                  "end": {
                    "line": 239,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 8147,
                "end": 8155,
                "loc": {
                  "start": {
                    "line": 239,
                    "column": 6
                  },
                  "end": {
                    "line": 239,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 8156,
              "end": 8165,
              "loc": {
                "start": {
                  "line": 239,
                  "column": 15
                },
                "end": {
                  "line": 239,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 8166,
            "end": 8184,
            "loc": {
              "start": {
                "line": 239,
                "column": 25
              },
              "end": {
                "line": 239,
                "column": 43
              }
            },
            "name": "removeObjectTweens"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 8187,
          "end": 8248,
          "loc": {
            "start": {
              "line": 239,
              "column": 46
            },
            "end": {
              "line": 242,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 8166,
            "end": 8184,
            "loc": {
              "start": {
                "line": 239,
                "column": 25
              },
              "end": {
                "line": 239,
                "column": 43
              }
            },
            "name": "removeObjectTweens"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 8198,
            "end": 8248,
            "loc": {
              "start": {
                "line": 239,
                "column": 57
              },
              "end": {
                "line": 242,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 8201,
                "end": 8232,
                "loc": {
                  "start": {
                    "line": 240,
                    "column": 1
                  },
                  "end": {
                    "line": 240,
                    "column": 32
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 8201,
                  "end": 8231,
                  "loc": {
                    "start": {
                      "line": 240,
                      "column": 1
                    },
                    "end": {
                      "line": 240,
                      "column": 31
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 8201,
                    "end": 8225,
                    "loc": {
                      "start": {
                        "line": 240,
                        "column": 1
                      },
                      "end": {
                        "line": 240,
                        "column": 25
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 8201,
                      "end": 8206,
                      "loc": {
                        "start": {
                          "line": 240,
                          "column": 1
                        },
                        "end": {
                          "line": 240,
                          "column": 6
                        }
                      },
                      "name": "Tween"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8207,
                      "end": 8225,
                      "loc": {
                        "start": {
                          "line": 240,
                          "column": 7
                        },
                        "end": {
                          "line": 240,
                          "column": 25
                        }
                      },
                      "name": "removeObjectTweens"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ThisExpression",
                      "start": 8226,
                      "end": 8230,
                      "loc": {
                        "start": {
                          "line": 240,
                          "column": 26
                        },
                        "end": {
                          "line": 240,
                          "column": 30
                        }
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 8234,
                "end": 8246,
                "loc": {
                  "start": {
                    "line": 241,
                    "column": 1
                  },
                  "end": {
                    "line": 241,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 8241,
                  "end": 8245,
                  "loc": {
                    "start": {
                      "line": 241,
                      "column": 8
                    },
                    "end": {
                      "line": 241,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "start": 8250,
      "end": 8409,
      "loc": {
        "start": {
          "line": 244,
          "column": 0
        },
        "end": {
          "line": 248,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 8259,
        "end": 8267,
        "loc": {
          "start": {
            "line": 244,
            "column": 9
          },
          "end": {
            "line": 244,
            "column": 17
          }
        },
        "name": "traverse"
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 8268,
          "end": 8271,
          "loc": {
            "start": {
              "line": 244,
              "column": 18
            },
            "end": {
              "line": 244,
              "column": 21
            }
          },
          "name": "obj"
        },
        {
          "type": "Identifier",
          "start": 8273,
          "end": 8275,
          "loc": {
            "start": {
              "line": 244,
              "column": 23
            },
            "end": {
              "line": 244,
              "column": 25
            }
          },
          "name": "cb"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 8277,
        "end": 8409,
        "loc": {
          "start": {
            "line": 244,
            "column": 27
          },
          "end": {
            "line": 248,
            "column": 1
          }
        },
        "body": [
          {
            "type": "IfStatement",
            "start": 8283,
            "end": 8311,
            "loc": {
              "start": {
                "line": 245,
                "column": 4
              },
              "end": {
                "line": 245,
                "column": 32
              }
            },
            "test": {
              "type": "UnaryExpression",
              "start": 8287,
              "end": 8301,
              "loc": {
                "start": {
                  "line": 245,
                  "column": 8
                },
                "end": {
                  "line": 245,
                  "column": 22
                }
              },
              "operator": "!",
              "prefix": true,
              "argument": {
                "type": "UnaryExpression",
                "start": 8288,
                "end": 8301,
                "loc": {
                  "start": {
                    "line": 245,
                    "column": 9
                  },
                  "end": {
                    "line": 245,
                    "column": 22
                  }
                },
                "operator": "!",
                "prefix": true,
                "argument": {
                  "type": "MemberExpression",
                  "start": 8289,
                  "end": 8301,
                  "loc": {
                    "start": {
                      "line": 245,
                      "column": 10
                    },
                    "end": {
                      "line": 245,
                      "column": 22
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 8289,
                    "end": 8292,
                    "loc": {
                      "start": {
                        "line": 245,
                        "column": 10
                      },
                      "end": {
                        "line": 245,
                        "column": 13
                      }
                    },
                    "name": "obj"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 8293,
                    "end": 8301,
                    "loc": {
                      "start": {
                        "line": 245,
                        "column": 14
                      },
                      "end": {
                        "line": 245,
                        "column": 22
                      }
                    },
                    "name": "material"
                  },
                  "computed": false
                }
              }
            },
            "consequent": {
              "type": "ExpressionStatement",
              "start": 8303,
              "end": 8311,
              "loc": {
                "start": {
                  "line": 245,
                  "column": 24
                },
                "end": {
                  "line": 245,
                  "column": 32
                }
              },
              "expression": {
                "type": "CallExpression",
                "start": 8303,
                "end": 8310,
                "loc": {
                  "start": {
                    "line": 245,
                    "column": 24
                  },
                  "end": {
                    "line": 245,
                    "column": 31
                  }
                },
                "callee": {
                  "type": "Identifier",
                  "start": 8303,
                  "end": 8305,
                  "loc": {
                    "start": {
                      "line": 245,
                      "column": 24
                    },
                    "end": {
                      "line": 245,
                      "column": 26
                    }
                  },
                  "name": "cb"
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 8306,
                    "end": 8309,
                    "loc": {
                      "start": {
                        "line": 245,
                        "column": 27
                      },
                      "end": {
                        "line": 245,
                        "column": 30
                      }
                    },
                    "name": "obj"
                  }
                ]
              }
            },
            "alternate": null
          },
          {
            "type": "ForOfStatement",
            "start": 8316,
            "end": 8407,
            "loc": {
              "start": {
                "line": 246,
                "column": 4
              },
              "end": {
                "line": 247,
                "column": 59
              }
            },
            "left": {
              "type": "VariableDeclaration",
              "start": 8321,
              "end": 8330,
              "loc": {
                "start": {
                  "line": 246,
                  "column": 9
                },
                "end": {
                  "line": 246,
                  "column": 18
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 8325,
                  "end": 8330,
                  "loc": {
                    "start": {
                      "line": 246,
                      "column": 13
                    },
                    "end": {
                      "line": 246,
                      "column": 18
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 8325,
                    "end": 8330,
                    "loc": {
                      "start": {
                        "line": 246,
                        "column": 13
                      },
                      "end": {
                        "line": 246,
                        "column": 18
                      }
                    },
                    "name": "child"
                  },
                  "init": null
                }
              ],
              "kind": "let"
            },
            "right": {
              "type": "MemberExpression",
              "start": 8334,
              "end": 8346,
              "loc": {
                "start": {
                  "line": 246,
                  "column": 22
                },
                "end": {
                  "line": 246,
                  "column": 34
                }
              },
              "object": {
                "type": "Identifier",
                "start": 8334,
                "end": 8337,
                "loc": {
                  "start": {
                    "line": 246,
                    "column": 22
                  },
                  "end": {
                    "line": 246,
                    "column": 25
                  }
                },
                "name": "obj"
              },
              "property": {
                "type": "Identifier",
                "start": 8338,
                "end": 8346,
                "loc": {
                  "start": {
                    "line": 246,
                    "column": 26
                  },
                  "end": {
                    "line": 246,
                    "column": 34
                  }
                },
                "name": "children"
              },
              "computed": false
            },
            "body": {
              "type": "ExpressionStatement",
              "start": 8356,
              "end": 8407,
              "loc": {
                "start": {
                  "line": 247,
                  "column": 8
                },
                "end": {
                  "line": 247,
                  "column": 59
                }
              },
              "expression": {
                "type": "LogicalExpression",
                "start": 8356,
                "end": 8406,
                "loc": {
                  "start": {
                    "line": 247,
                    "column": 8
                  },
                  "end": {
                    "line": 247,
                    "column": 58
                  }
                },
                "left": {
                  "type": "MemberExpression",
                  "start": 8356,
                  "end": 8383,
                  "loc": {
                    "start": {
                      "line": 247,
                      "column": 8
                    },
                    "end": {
                      "line": 247,
                      "column": 35
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 8356,
                    "end": 8361,
                    "loc": {
                      "start": {
                        "line": 247,
                        "column": 8
                      },
                      "end": {
                        "line": 247,
                        "column": 13
                      }
                    },
                    "name": "child"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 8362,
                    "end": 8383,
                    "loc": {
                      "start": {
                        "line": 247,
                        "column": 14
                      },
                      "end": {
                        "line": 247,
                        "column": 35
                      }
                    },
                    "name": "updateParentMaterials"
                  },
                  "computed": false
                },
                "operator": "&&",
                "right": {
                  "type": "CallExpression",
                  "start": 8387,
                  "end": 8406,
                  "loc": {
                    "start": {
                      "line": 247,
                      "column": 39
                    },
                    "end": {
                      "line": 247,
                      "column": 58
                    }
                  },
                  "callee": {
                    "type": "Identifier",
                    "start": 8387,
                    "end": 8395,
                    "loc": {
                      "start": {
                        "line": 247,
                        "column": 39
                      },
                      "end": {
                        "line": 247,
                        "column": 47
                      }
                    },
                    "name": "traverse"
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 8396,
                      "end": 8401,
                      "loc": {
                        "start": {
                          "line": 247,
                          "column": 48
                        },
                        "end": {
                          "line": 247,
                          "column": 53
                        }
                      },
                      "name": "child"
                    },
                    {
                      "type": "Identifier",
                      "start": 8403,
                      "end": 8405,
                      "loc": {
                        "start": {
                          "line": 247,
                          "column": 55
                        },
                        "end": {
                          "line": 247,
                          "column": 57
                        }
                      },
                      "name": "cb"
                    }
                  ]
                }
              }
            }
          }
        ]
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 8411,
      "end": 9052,
      "loc": {
        "start": {
          "line": 250,
          "column": 0
        },
        "end": {
          "line": 273,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 8411,
        "end": 9052,
        "loc": {
          "start": {
            "line": 250,
            "column": 0
          },
          "end": {
            "line": 273,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 8411,
          "end": 8451,
          "loc": {
            "start": {
              "line": 250,
              "column": 0
            },
            "end": {
              "line": 250,
              "column": 40
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 8411,
            "end": 8435,
            "loc": {
              "start": {
                "line": 250,
                "column": 0
              },
              "end": {
                "line": 250,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 8411,
              "end": 8425,
              "loc": {
                "start": {
                  "line": 250,
                  "column": 0
                },
                "end": {
                  "line": 250,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 8411,
                "end": 8416,
                "loc": {
                  "start": {
                    "line": 250,
                    "column": 0
                  },
                  "end": {
                    "line": 250,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 8417,
                "end": 8425,
                "loc": {
                  "start": {
                    "line": 250,
                    "column": 6
                  },
                  "end": {
                    "line": 250,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 8426,
              "end": 8435,
              "loc": {
                "start": {
                  "line": 250,
                  "column": 15
                },
                "end": {
                  "line": 250,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 8436,
            "end": 8451,
            "loc": {
              "start": {
                "line": 250,
                "column": 25
              },
              "end": {
                "line": 250,
                "column": 40
              }
            },
            "name": "updateMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 8454,
          "end": 9052,
          "loc": {
            "start": {
              "line": 250,
              "column": 43
            },
            "end": {
              "line": 273,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 8436,
            "end": 8451,
            "loc": {
              "start": {
                "line": 250,
                "column": 25
              },
              "end": {
                "line": 250,
                "column": 40
              }
            },
            "name": "updateMaterials"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 8465,
            "end": 9052,
            "loc": {
              "start": {
                "line": 250,
                "column": 54
              },
              "end": {
                "line": 273,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 8471,
                "end": 8489,
                "loc": {
                  "start": {
                    "line": 251,
                    "column": 4
                  },
                  "end": {
                    "line": 251,
                    "column": 22
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 8475,
                    "end": 8488,
                    "loc": {
                      "start": {
                        "line": 251,
                        "column": 8
                      },
                      "end": {
                        "line": 251,
                        "column": 21
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 8475,
                      "end": 8483,
                      "loc": {
                        "start": {
                          "line": 251,
                          "column": 8
                        },
                        "end": {
                          "line": 251,
                          "column": 16
                        }
                      },
                      "name": "colorMap"
                    },
                    "init": {
                      "type": "ObjectExpression",
                      "start": 8486,
                      "end": 8488,
                      "loc": {
                        "start": {
                          "line": 251,
                          "column": 19
                        },
                        "end": {
                          "line": 251,
                          "column": 21
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "ExpressionStatement",
                "start": 8491,
                "end": 8590,
                "loc": {
                  "start": {
                    "line": 252,
                    "column": 1
                  },
                  "end": {
                    "line": 257,
                    "column": 3
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 8491,
                  "end": 8589,
                  "loc": {
                    "start": {
                      "line": 252,
                      "column": 1
                    },
                    "end": {
                      "line": 257,
                      "column": 2
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 8491,
                    "end": 8505,
                    "loc": {
                      "start": {
                        "line": 252,
                        "column": 1
                      },
                      "end": {
                        "line": 252,
                        "column": 15
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 8491,
                      "end": 8495,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 1
                        },
                        "end": {
                          "line": 252,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8496,
                      "end": 8505,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 6
                        },
                        "end": {
                          "line": 252,
                          "column": 15
                        }
                      },
                      "name": "materials"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "LogicalExpression",
                    "start": 8508,
                    "end": 8589,
                    "loc": {
                      "start": {
                        "line": 252,
                        "column": 18
                      },
                      "end": {
                        "line": 257,
                        "column": 2
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 8508,
                      "end": 8522,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 18
                        },
                        "end": {
                          "line": 252,
                          "column": 32
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 8508,
                        "end": 8512,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 18
                          },
                          "end": {
                            "line": 252,
                            "column": 22
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8513,
                        "end": 8522,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 23
                          },
                          "end": {
                            "line": 252,
                            "column": 32
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "operator": "||",
                    "right": {
                      "type": "ObjectExpression",
                      "start": 8526,
                      "end": 8589,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 36
                        },
                        "end": {
                          "line": 257,
                          "column": 2
                        }
                      },
                      "properties": [
                        {
                          "type": "Property",
                          "start": 8530,
                          "end": 8548,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 2
                            },
                            "end": {
                              "line": 253,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8530,
                            "end": 8542,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 2
                              },
                              "end": {
                                "line": 253,
                                "column": 14
                              }
                            },
                            "name": "updateParent"
                          },
                          "value": {
                            "type": "Literal",
                            "start": 8544,
                            "end": 8548,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 16
                              },
                              "end": {
                                "line": 253,
                                "column": 20
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 8552,
                          "end": 8559,
                          "loc": {
                            "start": {
                              "line": 254,
                              "column": 2
                            },
                            "end": {
                              "line": 254,
                              "column": 9
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8552,
                            "end": 8555,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 2
                              },
                              "end": {
                                "line": 254,
                                "column": 5
                              }
                            },
                            "name": "all"
                          },
                          "value": {
                            "type": "ArrayExpression",
                            "start": 8557,
                            "end": 8559,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 7
                              },
                              "end": {
                                "line": 254,
                                "column": 9
                              }
                            },
                            "elements": []
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 8563,
                          "end": 8573,
                          "loc": {
                            "start": {
                              "line": 255,
                              "column": 2
                            },
                            "end": {
                              "line": 255,
                              "column": 12
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8563,
                            "end": 8569,
                            "loc": {
                              "start": {
                                "line": 255,
                                "column": 2
                              },
                              "end": {
                                "line": 255,
                                "column": 8
                              }
                            },
                            "name": "meshes"
                          },
                          "value": {
                            "type": "ArrayExpression",
                            "start": 8571,
                            "end": 8573,
                            "loc": {
                              "start": {
                                "line": 255,
                                "column": 10
                              },
                              "end": {
                                "line": 255,
                                "column": 12
                              }
                            },
                            "elements": []
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 8577,
                          "end": 8586,
                          "loc": {
                            "start": {
                              "line": 256,
                              "column": 2
                            },
                            "end": {
                              "line": 256,
                              "column": 11
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 8577,
                            "end": 8582,
                            "loc": {
                              "start": {
                                "line": 256,
                                "column": 2
                              },
                              "end": {
                                "line": 256,
                                "column": 7
                              }
                            },
                            "name": "lines"
                          },
                          "value": {
                            "type": "ArrayExpression",
                            "start": 8584,
                            "end": 8586,
                            "loc": {
                              "start": {
                                "line": 256,
                                "column": 9
                              },
                              "end": {
                                "line": 256,
                                "column": 11
                              }
                            },
                            "elements": []
                          },
                          "kind": "init"
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8592,
                "end": 8616,
                "loc": {
                  "start": {
                    "line": 258,
                    "column": 1
                  },
                  "end": {
                    "line": 258,
                    "column": 25
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 8592,
                  "end": 8615,
                  "loc": {
                    "start": {
                      "line": 258,
                      "column": 1
                    },
                    "end": {
                      "line": 258,
                      "column": 24
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 8592,
                    "end": 8610,
                    "loc": {
                      "start": {
                        "line": 258,
                        "column": 1
                      },
                      "end": {
                        "line": 258,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 8592,
                      "end": 8606,
                      "loc": {
                        "start": {
                          "line": 258,
                          "column": 1
                        },
                        "end": {
                          "line": 258,
                          "column": 15
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 8592,
                        "end": 8596,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 1
                          },
                          "end": {
                            "line": 258,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8597,
                        "end": 8606,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 6
                          },
                          "end": {
                            "line": 258,
                            "column": 15
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8607,
                      "end": 8610,
                      "loc": {
                        "start": {
                          "line": 258,
                          "column": 16
                        },
                        "end": {
                          "line": 258,
                          "column": 19
                        }
                      },
                      "name": "all"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ArrayExpression",
                    "start": 8613,
                    "end": 8615,
                    "loc": {
                      "start": {
                        "line": 258,
                        "column": 22
                      },
                      "end": {
                        "line": 258,
                        "column": 24
                      }
                    },
                    "elements": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8618,
                "end": 8645,
                "loc": {
                  "start": {
                    "line": 259,
                    "column": 1
                  },
                  "end": {
                    "line": 259,
                    "column": 28
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 8618,
                  "end": 8644,
                  "loc": {
                    "start": {
                      "line": 259,
                      "column": 1
                    },
                    "end": {
                      "line": 259,
                      "column": 27
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 8618,
                    "end": 8639,
                    "loc": {
                      "start": {
                        "line": 259,
                        "column": 1
                      },
                      "end": {
                        "line": 259,
                        "column": 22
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 8618,
                      "end": 8632,
                      "loc": {
                        "start": {
                          "line": 259,
                          "column": 1
                        },
                        "end": {
                          "line": 259,
                          "column": 15
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 8618,
                        "end": 8622,
                        "loc": {
                          "start": {
                            "line": 259,
                            "column": 1
                          },
                          "end": {
                            "line": 259,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8623,
                        "end": 8632,
                        "loc": {
                          "start": {
                            "line": 259,
                            "column": 6
                          },
                          "end": {
                            "line": 259,
                            "column": 15
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8633,
                      "end": 8639,
                      "loc": {
                        "start": {
                          "line": 259,
                          "column": 16
                        },
                        "end": {
                          "line": 259,
                          "column": 22
                        }
                      },
                      "name": "meshes"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ArrayExpression",
                    "start": 8642,
                    "end": 8644,
                    "loc": {
                      "start": {
                        "line": 259,
                        "column": 25
                      },
                      "end": {
                        "line": 259,
                        "column": 27
                      }
                    },
                    "elements": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8647,
                "end": 8673,
                "loc": {
                  "start": {
                    "line": 260,
                    "column": 1
                  },
                  "end": {
                    "line": 260,
                    "column": 27
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 8647,
                  "end": 8672,
                  "loc": {
                    "start": {
                      "line": 260,
                      "column": 1
                    },
                    "end": {
                      "line": 260,
                      "column": 26
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 8647,
                    "end": 8667,
                    "loc": {
                      "start": {
                        "line": 260,
                        "column": 1
                      },
                      "end": {
                        "line": 260,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 8647,
                      "end": 8661,
                      "loc": {
                        "start": {
                          "line": 260,
                          "column": 1
                        },
                        "end": {
                          "line": 260,
                          "column": 15
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 8647,
                        "end": 8651,
                        "loc": {
                          "start": {
                            "line": 260,
                            "column": 1
                          },
                          "end": {
                            "line": 260,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8652,
                        "end": 8661,
                        "loc": {
                          "start": {
                            "line": 260,
                            "column": 6
                          },
                          "end": {
                            "line": 260,
                            "column": 15
                          }
                        },
                        "name": "materials"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8662,
                      "end": 8667,
                      "loc": {
                        "start": {
                          "line": 260,
                          "column": 16
                        },
                        "end": {
                          "line": 260,
                          "column": 21
                        }
                      },
                      "name": "lines"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ArrayExpression",
                    "start": 8670,
                    "end": 8672,
                    "loc": {
                      "start": {
                        "line": 260,
                        "column": 24
                      },
                      "end": {
                        "line": 260,
                        "column": 26
                      }
                    },
                    "elements": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8679,
                "end": 8751,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 4
                  },
                  "end": {
                    "line": 262,
                    "column": 76
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 8679,
                  "end": 8750,
                  "loc": {
                    "start": {
                      "line": 262,
                      "column": 4
                    },
                    "end": {
                      "line": 262,
                      "column": 75
                    }
                  },
                  "callee": {
                    "type": "Identifier",
                    "start": 8679,
                    "end": 8687,
                    "loc": {
                      "start": {
                        "line": 262,
                        "column": 4
                      },
                      "end": {
                        "line": 262,
                        "column": 12
                      }
                    },
                    "name": "traverse"
                  },
                  "arguments": [
                    {
                      "type": "ThisExpression",
                      "start": 8688,
                      "end": 8692,
                      "loc": {
                        "start": {
                          "line": 262,
                          "column": 13
                        },
                        "end": {
                          "line": 262,
                          "column": 17
                        }
                      }
                    },
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 8694,
                      "end": 8749,
                      "loc": {
                        "start": {
                          "line": 262,
                          "column": 19
                        },
                        "end": {
                          "line": 262,
                          "column": 74
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": true,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 8694,
                          "end": 8699,
                          "loc": {
                            "start": {
                              "line": 262,
                              "column": 19
                            },
                            "end": {
                              "line": 262,
                              "column": 24
                            }
                          },
                          "name": "child"
                        }
                      ],
                      "body": {
                        "type": "AssignmentExpression",
                        "start": 8703,
                        "end": 8749,
                        "loc": {
                          "start": {
                            "line": 262,
                            "column": 28
                          },
                          "end": {
                            "line": 262,
                            "column": 74
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 8703,
                          "end": 8732,
                          "loc": {
                            "start": {
                              "line": 262,
                              "column": 28
                            },
                            "end": {
                              "line": 262,
                              "column": 57
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8703,
                            "end": 8711,
                            "loc": {
                              "start": {
                                "line": 262,
                                "column": 28
                              },
                              "end": {
                                "line": 262,
                                "column": 36
                              }
                            },
                            "name": "colorMap"
                          },
                          "property": {
                            "type": "MemberExpression",
                            "start": 8712,
                            "end": 8731,
                            "loc": {
                              "start": {
                                "line": 262,
                                "column": 37
                              },
                              "end": {
                                "line": 262,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8712,
                              "end": 8726,
                              "loc": {
                                "start": {
                                  "line": 262,
                                  "column": 37
                                },
                                "end": {
                                  "line": 262,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8712,
                                "end": 8717,
                                "loc": {
                                  "start": {
                                    "line": 262,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 262,
                                    "column": 42
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8718,
                                "end": 8726,
                                "loc": {
                                  "start": {
                                    "line": 262,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 262,
                                    "column": 51
                                  }
                                },
                                "name": "material"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8727,
                              "end": 8731,
                              "loc": {
                                "start": {
                                  "line": 262,
                                  "column": 52
                                },
                                "end": {
                                  "line": 262,
                                  "column": 56
                                }
                              },
                              "name": "uuid"
                            },
                            "computed": false
                          },
                          "computed": true
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 8735,
                          "end": 8749,
                          "loc": {
                            "start": {
                              "line": 262,
                              "column": 60
                            },
                            "end": {
                              "line": 262,
                              "column": 74
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8735,
                            "end": 8740,
                            "loc": {
                              "start": {
                                "line": 262,
                                "column": 60
                              },
                              "end": {
                                "line": 262,
                                "column": 65
                              }
                            },
                            "name": "child"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8741,
                            "end": 8749,
                            "loc": {
                              "start": {
                                "line": 262,
                                "column": 66
                              },
                              "end": {
                                "line": 262,
                                "column": 74
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        }
                      }
                    }
                  ]
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 8753,
                "end": 9035,
                "loc": {
                  "start": {
                    "line": 263,
                    "column": 1
                  },
                  "end": {
                    "line": 270,
                    "column": 4
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 8753,
                  "end": 9034,
                  "loc": {
                    "start": {
                      "line": 263,
                      "column": 1
                    },
                    "end": {
                      "line": 270,
                      "column": 3
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 8753,
                    "end": 8782,
                    "loc": {
                      "start": {
                        "line": 263,
                        "column": 1
                      },
                      "end": {
                        "line": 263,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 8753,
                      "end": 8774,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 1
                        },
                        "end": {
                          "line": 263,
                          "column": 22
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 8753,
                        "end": 8764,
                        "loc": {
                          "start": {
                            "line": 263,
                            "column": 1
                          },
                          "end": {
                            "line": 263,
                            "column": 12
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 8753,
                          "end": 8759,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 1
                            },
                            "end": {
                              "line": 263,
                              "column": 7
                            }
                          },
                          "name": "Object"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 8760,
                          "end": 8764,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 8
                            },
                            "end": {
                              "line": 263,
                              "column": 12
                            }
                          },
                          "name": "keys"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 8765,
                          "end": 8773,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 13
                            },
                            "end": {
                              "line": 263,
                              "column": 21
                            }
                          },
                          "name": "colorMap"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 8775,
                      "end": 8782,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 23
                        },
                        "end": {
                          "line": 263,
                          "column": 30
                        }
                      },
                      "name": "forEach"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 8783,
                      "end": 9033,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 31
                        },
                        "end": {
                          "line": 270,
                          "column": 2
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 8783,
                          "end": 8786,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 31
                            },
                            "end": {
                              "line": 263,
                              "column": 34
                            }
                          },
                          "name": "key"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 8790,
                        "end": 9033,
                        "loc": {
                          "start": {
                            "line": 263,
                            "column": 38
                          },
                          "end": {
                            "line": 270,
                            "column": 2
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 8794,
                            "end": 8823,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 2
                              },
                              "end": {
                                "line": 264,
                                "column": 31
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 8798,
                                "end": 8822,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 30
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 8798,
                                  "end": 8806,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 14
                                    }
                                  },
                                  "name": "material"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 8809,
                                  "end": 8822,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8809,
                                    "end": 8817,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 25
                                      }
                                    },
                                    "name": "colorMap"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8818,
                                    "end": 8821,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 29
                                      }
                                    },
                                    "name": "key"
                                  },
                                  "computed": true
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8826,
                            "end": 8860,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 2
                              },
                              "end": {
                                "line": 265,
                                "column": 36
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 8826,
                              "end": 8859,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 2
                                },
                                "end": {
                                  "line": 265,
                                  "column": 35
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8826,
                                "end": 8849,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 2
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8826,
                                  "end": 8844,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 2
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8826,
                                    "end": 8840,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 2
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 16
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8826,
                                      "end": 8830,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 2
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 6
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8831,
                                      "end": 8840,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 16
                                        }
                                      },
                                      "name": "materials"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8841,
                                    "end": 8844,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 20
                                      }
                                    },
                                    "name": "all"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8845,
                                  "end": 8849,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 25
                                    }
                                  },
                                  "name": "push"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8850,
                                  "end": 8858,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 34
                                    }
                                  },
                                  "name": "material"
                                }
                              ]
                            }
                          },
                          {
                            "type": "IfStatement",
                            "start": 8863,
                            "end": 9030,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 2
                              },
                              "end": {
                                "line": 269,
                                "column": 39
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 8867,
                              "end": 8901,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 6
                                },
                                "end": {
                                  "line": 266,
                                  "column": 40
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 8867,
                                "end": 8896,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 35
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8867,
                                  "end": 8888,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8867,
                                    "end": 8880,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 19
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8867,
                                      "end": 8875,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 14
                                        }
                                      },
                                      "name": "material"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8876,
                                      "end": 8880,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 19
                                        }
                                      },
                                      "name": "type"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8881,
                                    "end": 8888,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 27
                                      }
                                    },
                                    "name": "indexOf"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 8889,
                                    "end": 8895,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 34
                                      }
                                    },
                                    "value": "Mesh",
                                    "rawValue": "Mesh",
                                    "raw": "'Mesh'"
                                  }
                                ]
                              },
                              "operator": ">",
                              "right": {
                                "type": "UnaryExpression",
                                "start": 8899,
                                "end": 8901,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 40
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 8900,
                                  "end": 8901,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 40
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              }
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 8906,
                              "end": 8943,
                              "loc": {
                                "start": {
                                  "line": 267,
                                  "column": 3
                                },
                                "end": {
                                  "line": 267,
                                  "column": 40
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 8906,
                                "end": 8942,
                                "loc": {
                                  "start": {
                                    "line": 267,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 267,
                                    "column": 39
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8906,
                                  "end": 8932,
                                  "loc": {
                                    "start": {
                                      "line": 267,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 267,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8906,
                                    "end": 8927,
                                    "loc": {
                                      "start": {
                                        "line": 267,
                                        "column": 3
                                      },
                                      "end": {
                                        "line": 267,
                                        "column": 24
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8906,
                                      "end": 8920,
                                      "loc": {
                                        "start": {
                                          "line": 267,
                                          "column": 3
                                        },
                                        "end": {
                                          "line": 267,
                                          "column": 17
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 8906,
                                        "end": 8910,
                                        "loc": {
                                          "start": {
                                            "line": 267,
                                            "column": 3
                                          },
                                          "end": {
                                            "line": 267,
                                            "column": 7
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8911,
                                        "end": 8920,
                                        "loc": {
                                          "start": {
                                            "line": 267,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 267,
                                            "column": 17
                                          }
                                        },
                                        "name": "materials"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8921,
                                      "end": 8927,
                                      "loc": {
                                        "start": {
                                          "line": 267,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 267,
                                          "column": 24
                                        }
                                      },
                                      "name": "meshes"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8928,
                                    "end": 8932,
                                    "loc": {
                                      "start": {
                                        "line": 267,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 267,
                                        "column": 29
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 8933,
                                    "end": 8941,
                                    "loc": {
                                      "start": {
                                        "line": 267,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 267,
                                        "column": 38
                                      }
                                    },
                                    "name": "material"
                                  }
                                ]
                              }
                            },
                            "alternate": {
                              "type": "IfStatement",
                              "start": 8951,
                              "end": 9030,
                              "loc": {
                                "start": {
                                  "line": 268,
                                  "column": 7
                                },
                                "end": {
                                  "line": 269,
                                  "column": 39
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 8955,
                                "end": 8989,
                                "loc": {
                                  "start": {
                                    "line": 268,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 268,
                                    "column": 45
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 8955,
                                  "end": 8984,
                                  "loc": {
                                    "start": {
                                      "line": 268,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 268,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8955,
                                    "end": 8976,
                                    "loc": {
                                      "start": {
                                        "line": 268,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 268,
                                        "column": 32
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8955,
                                      "end": 8968,
                                      "loc": {
                                        "start": {
                                          "line": 268,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 268,
                                          "column": 24
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8955,
                                        "end": 8963,
                                        "loc": {
                                          "start": {
                                            "line": 268,
                                            "column": 11
                                          },
                                          "end": {
                                            "line": 268,
                                            "column": 19
                                          }
                                        },
                                        "name": "material"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8964,
                                        "end": 8968,
                                        "loc": {
                                          "start": {
                                            "line": 268,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 268,
                                            "column": 24
                                          }
                                        },
                                        "name": "type"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8969,
                                      "end": 8976,
                                      "loc": {
                                        "start": {
                                          "line": 268,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 268,
                                          "column": 32
                                        }
                                      },
                                      "name": "indexOf"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Literal",
                                      "start": 8977,
                                      "end": 8983,
                                      "loc": {
                                        "start": {
                                          "line": 268,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 268,
                                          "column": 39
                                        }
                                      },
                                      "value": "Line",
                                      "rawValue": "Line",
                                      "raw": "'Line'"
                                    }
                                  ]
                                },
                                "operator": ">",
                                "right": {
                                  "type": "UnaryExpression",
                                  "start": 8987,
                                  "end": 8989,
                                  "loc": {
                                    "start": {
                                      "line": 268,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 268,
                                      "column": 45
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Literal",
                                    "start": 8988,
                                    "end": 8989,
                                    "loc": {
                                      "start": {
                                        "line": 268,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 268,
                                        "column": 45
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              },
                              "consequent": {
                                "type": "ExpressionStatement",
                                "start": 8994,
                                "end": 9030,
                                "loc": {
                                  "start": {
                                    "line": 269,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 269,
                                    "column": 39
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 8994,
                                  "end": 9029,
                                  "loc": {
                                    "start": {
                                      "line": 269,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 269,
                                      "column": 38
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8994,
                                    "end": 9019,
                                    "loc": {
                                      "start": {
                                        "line": 269,
                                        "column": 3
                                      },
                                      "end": {
                                        "line": 269,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8994,
                                      "end": 9014,
                                      "loc": {
                                        "start": {
                                          "line": 269,
                                          "column": 3
                                        },
                                        "end": {
                                          "line": 269,
                                          "column": 23
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 8994,
                                        "end": 9008,
                                        "loc": {
                                          "start": {
                                            "line": 269,
                                            "column": 3
                                          },
                                          "end": {
                                            "line": 269,
                                            "column": 17
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 8994,
                                          "end": 8998,
                                          "loc": {
                                            "start": {
                                              "line": 269,
                                              "column": 3
                                            },
                                            "end": {
                                              "line": 269,
                                              "column": 7
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8999,
                                          "end": 9008,
                                          "loc": {
                                            "start": {
                                              "line": 269,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 269,
                                              "column": 17
                                            }
                                          },
                                          "name": "materials"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9009,
                                        "end": 9014,
                                        "loc": {
                                          "start": {
                                            "line": 269,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 269,
                                            "column": 23
                                          }
                                        },
                                        "name": "lines"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9015,
                                      "end": 9019,
                                      "loc": {
                                        "start": {
                                          "line": 269,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 269,
                                          "column": 28
                                        }
                                      },
                                      "name": "push"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 9020,
                                      "end": 9028,
                                      "loc": {
                                        "start": {
                                          "line": 269,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 269,
                                          "column": 37
                                        }
                                      },
                                      "name": "material"
                                    }
                                  ]
                                }
                              },
                              "alternate": null
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 9038,
                "end": 9050,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 1
                  },
                  "end": {
                    "line": 272,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 9045,
                  "end": 9049,
                  "loc": {
                    "start": {
                      "line": 272,
                      "column": 8
                    },
                    "end": {
                      "line": 272,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 9054,
      "end": 9737,
      "loc": {
        "start": {
          "line": 275,
          "column": 0
        },
        "end": {
          "line": 303,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 9054,
        "end": 9737,
        "loc": {
          "start": {
            "line": 275,
            "column": 0
          },
          "end": {
            "line": 303,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 9054,
          "end": 9087,
          "loc": {
            "start": {
              "line": 275,
              "column": 0
            },
            "end": {
              "line": 275,
              "column": 33
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 9054,
            "end": 9078,
            "loc": {
              "start": {
                "line": 275,
                "column": 0
              },
              "end": {
                "line": 275,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 9054,
              "end": 9068,
              "loc": {
                "start": {
                  "line": 275,
                  "column": 0
                },
                "end": {
                  "line": 275,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 9054,
                "end": 9059,
                "loc": {
                  "start": {
                    "line": 275,
                    "column": 0
                  },
                  "end": {
                    "line": 275,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 9060,
                "end": 9068,
                "loc": {
                  "start": {
                    "line": 275,
                    "column": 6
                  },
                  "end": {
                    "line": 275,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 9069,
              "end": 9078,
              "loc": {
                "start": {
                  "line": 275,
                  "column": 15
                },
                "end": {
                  "line": 275,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 9079,
            "end": 9087,
            "loc": {
              "start": {
                "line": 275,
                "column": 25
              },
              "end": {
                "line": 275,
                "column": 33
              }
            },
            "name": "compress"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 9090,
          "end": 9737,
          "loc": {
            "start": {
              "line": 275,
              "column": 36
            },
            "end": {
              "line": 303,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 9079,
            "end": 9087,
            "loc": {
              "start": {
                "line": 275,
                "column": 25
              },
              "end": {
                "line": 275,
                "column": 33
              }
            },
            "name": "compress"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 9101,
            "end": 9737,
            "loc": {
              "start": {
                "line": 275,
                "column": 47
              },
              "end": {
                "line": 303,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 9104,
                "end": 9132,
                "loc": {
                  "start": {
                    "line": 276,
                    "column": 1
                  },
                  "end": {
                    "line": 276,
                    "column": 29
                  }
                },
                "test": {
                  "type": "UnaryExpression",
                  "start": 9108,
                  "end": 9123,
                  "loc": {
                    "start": {
                      "line": 276,
                      "column": 5
                    },
                    "end": {
                      "line": 276,
                      "column": 20
                    }
                  },
                  "operator": "!",
                  "prefix": true,
                  "argument": {
                    "type": "MemberExpression",
                    "start": 9109,
                    "end": 9123,
                    "loc": {
                      "start": {
                        "line": 276,
                        "column": 6
                      },
                      "end": {
                        "line": 276,
                        "column": 20
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 9109,
                      "end": 9113,
                      "loc": {
                        "start": {
                          "line": 276,
                          "column": 6
                        },
                        "end": {
                          "line": 276,
                          "column": 10
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9114,
                      "end": 9123,
                      "loc": {
                        "start": {
                          "line": 276,
                          "column": 11
                        },
                        "end": {
                          "line": 276,
                          "column": 20
                        }
                      },
                      "name": "materials"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 9125,
                  "end": 9132,
                  "loc": {
                    "start": {
                      "line": 276,
                      "column": 22
                    },
                    "end": {
                      "line": 276,
                      "column": 29
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "VariableDeclaration",
                "start": 9135,
                "end": 9195,
                "loc": {
                  "start": {
                    "line": 278,
                    "column": 1
                  },
                  "end": {
                    "line": 279,
                    "column": 16
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 9139,
                    "end": 9177,
                    "loc": {
                      "start": {
                        "line": 278,
                        "column": 5
                      },
                      "end": {
                        "line": 278,
                        "column": 43
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 9139,
                      "end": 9143,
                      "loc": {
                        "start": {
                          "line": 278,
                          "column": 5
                        },
                        "end": {
                          "line": 278,
                          "column": 9
                        }
                      },
                      "name": "keys"
                    },
                    "init": {
                      "type": "CallExpression",
                      "start": 9146,
                      "end": 9177,
                      "loc": {
                        "start": {
                          "line": 278,
                          "column": 12
                        },
                        "end": {
                          "line": 278,
                          "column": 43
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 9146,
                        "end": 9157,
                        "loc": {
                          "start": {
                            "line": 278,
                            "column": 12
                          },
                          "end": {
                            "line": 278,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 9146,
                          "end": 9152,
                          "loc": {
                            "start": {
                              "line": 278,
                              "column": 12
                            },
                            "end": {
                              "line": 278,
                              "column": 18
                            }
                          },
                          "name": "Object"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9153,
                          "end": 9157,
                          "loc": {
                            "start": {
                              "line": 278,
                              "column": 19
                            },
                            "end": {
                              "line": 278,
                              "column": 23
                            }
                          },
                          "name": "keys"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 9158,
                          "end": 9176,
                          "loc": {
                            "start": {
                              "line": 278,
                              "column": 24
                            },
                            "end": {
                              "line": 278,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9158,
                            "end": 9172,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 24
                              },
                              "end": {
                                "line": 278,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9158,
                              "end": 9162,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 24
                                },
                                "end": {
                                  "line": 278,
                                  "column": 28
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9163,
                              "end": 9172,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 29
                                },
                                "end": {
                                  "line": 278,
                                  "column": 38
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9173,
                            "end": 9176,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 39
                              },
                              "end": {
                                "line": 278,
                                "column": 42
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        }
                      ]
                    }
                  },
                  {
                    "type": "VariableDeclarator",
                    "start": 9181,
                    "end": 9194,
                    "loc": {
                      "start": {
                        "line": 279,
                        "column": 2
                      },
                      "end": {
                        "line": 279,
                        "column": 15
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 9181,
                      "end": 9189,
                      "loc": {
                        "start": {
                          "line": 279,
                          "column": 2
                        },
                        "end": {
                          "line": 279,
                          "column": 10
                        }
                      },
                      "name": "colorMap"
                    },
                    "init": {
                      "type": "ObjectExpression",
                      "start": 9192,
                      "end": 9194,
                      "loc": {
                        "start": {
                          "line": 279,
                          "column": 13
                        },
                        "end": {
                          "line": 279,
                          "column": 15
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "kind": "var",
                "trailingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Compress materials",
                    "start": 9198,
                    "end": 9219,
                    "loc": {
                      "start": {
                        "line": 281,
                        "column": 1
                      },
                      "end": {
                        "line": 281,
                        "column": 22
                      }
                    },
                    "range": [
                      9198,
                      9219
                    ]
                  }
                ]
              },
              {
                "type": "ForStatement",
                "start": 9221,
                "end": 9695,
                "loc": {
                  "start": {
                    "line": 282,
                    "column": 1
                  },
                  "end": {
                    "line": 299,
                    "column": 2
                  }
                },
                "init": {
                  "type": "VariableDeclaration",
                  "start": 9226,
                  "end": 9266,
                  "loc": {
                    "start": {
                      "line": 282,
                      "column": 6
                    },
                    "end": {
                      "line": 282,
                      "column": 46
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 9230,
                      "end": 9235,
                      "loc": {
                        "start": {
                          "line": 282,
                          "column": 10
                        },
                        "end": {
                          "line": 282,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 9230,
                        "end": 9231,
                        "loc": {
                          "start": {
                            "line": 282,
                            "column": 10
                          },
                          "end": {
                            "line": 282,
                            "column": 11
                          }
                        },
                        "name": "i",
                        "leadingComments": null
                      },
                      "init": {
                        "type": "Literal",
                        "start": 9234,
                        "end": 9235,
                        "loc": {
                          "start": {
                            "line": 282,
                            "column": 14
                          },
                          "end": {
                            "line": 282,
                            "column": 15
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclarator",
                      "start": 9237,
                      "end": 9266,
                      "loc": {
                        "start": {
                          "line": 282,
                          "column": 17
                        },
                        "end": {
                          "line": 282,
                          "column": 46
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 9237,
                        "end": 9238,
                        "loc": {
                          "start": {
                            "line": 282,
                            "column": 17
                          },
                          "end": {
                            "line": 282,
                            "column": 18
                          }
                        },
                        "name": "l"
                      },
                      "init": {
                        "type": "MemberExpression",
                        "start": 9241,
                        "end": 9266,
                        "loc": {
                          "start": {
                            "line": 282,
                            "column": 21
                          },
                          "end": {
                            "line": 282,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 9241,
                          "end": 9259,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 21
                            },
                            "end": {
                              "line": 282,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9241,
                            "end": 9255,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 21
                              },
                              "end": {
                                "line": 282,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9241,
                              "end": 9245,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 21
                                },
                                "end": {
                                  "line": 282,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9246,
                              "end": 9255,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 26
                                },
                                "end": {
                                  "line": 282,
                                  "column": 35
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9256,
                            "end": 9259,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 36
                              },
                              "end": {
                                "line": 282,
                                "column": 39
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9260,
                          "end": 9266,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 40
                            },
                            "end": {
                              "line": 282,
                              "column": 46
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "kind": "var",
                  "leadingComments": null
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 9268,
                  "end": 9273,
                  "loc": {
                    "start": {
                      "line": 282,
                      "column": 48
                    },
                    "end": {
                      "line": 282,
                      "column": 53
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 9268,
                    "end": 9269,
                    "loc": {
                      "start": {
                        "line": 282,
                        "column": 48
                      },
                      "end": {
                        "line": 282,
                        "column": 49
                      }
                    },
                    "name": "i"
                  },
                  "operator": "<",
                  "right": {
                    "type": "Identifier",
                    "start": 9272,
                    "end": 9273,
                    "loc": {
                      "start": {
                        "line": 282,
                        "column": 52
                      },
                      "end": {
                        "line": 282,
                        "column": 53
                      }
                    },
                    "name": "l"
                  }
                },
                "update": {
                  "type": "UpdateExpression",
                  "start": 9275,
                  "end": 9278,
                  "loc": {
                    "start": {
                      "line": 282,
                      "column": 55
                    },
                    "end": {
                      "line": 282,
                      "column": 58
                    }
                  },
                  "operator": "++",
                  "prefix": false,
                  "argument": {
                    "type": "Identifier",
                    "start": 9275,
                    "end": 9276,
                    "loc": {
                      "start": {
                        "line": 282,
                        "column": 55
                      },
                      "end": {
                        "line": 282,
                        "column": 56
                      }
                    },
                    "name": "i"
                  }
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 9280,
                  "end": 9695,
                  "loc": {
                    "start": {
                      "line": 282,
                      "column": 60
                    },
                    "end": {
                      "line": 299,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 9284,
                      "end": 9417,
                      "loc": {
                        "start": {
                          "line": 283,
                          "column": 2
                        },
                        "end": {
                          "line": 284,
                          "column": 95
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9288,
                          "end": 9320,
                          "loc": {
                            "start": {
                              "line": 283,
                              "column": 6
                            },
                            "end": {
                              "line": 283,
                              "column": 38
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9288,
                            "end": 9296,
                            "loc": {
                              "start": {
                                "line": 283,
                                "column": 6
                              },
                              "end": {
                                "line": 283,
                                "column": 14
                              }
                            },
                            "name": "material"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 9299,
                            "end": 9320,
                            "loc": {
                              "start": {
                                "line": 283,
                                "column": 17
                              },
                              "end": {
                                "line": 283,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9299,
                              "end": 9317,
                              "loc": {
                                "start": {
                                  "line": 283,
                                  "column": 17
                                },
                                "end": {
                                  "line": 283,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9299,
                                "end": 9313,
                                "loc": {
                                  "start": {
                                    "line": 283,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 283,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 9299,
                                  "end": 9303,
                                  "loc": {
                                    "start": {
                                      "line": 283,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 283,
                                      "column": 21
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9304,
                                  "end": 9313,
                                  "loc": {
                                    "start": {
                                      "line": 283,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 283,
                                      "column": 31
                                    }
                                  },
                                  "name": "materials"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9314,
                                "end": 9317,
                                "loc": {
                                  "start": {
                                    "line": 283,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 283,
                                    "column": 35
                                  }
                                },
                                "name": "all"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9318,
                              "end": 9319,
                              "loc": {
                                "start": {
                                  "line": 283,
                                  "column": 36
                                },
                                "end": {
                                  "line": 283,
                                  "column": 37
                                }
                              },
                              "name": "i"
                            },
                            "computed": true
                          }
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 9325,
                          "end": 9416,
                          "loc": {
                            "start": {
                              "line": 284,
                              "column": 3
                            },
                            "end": {
                              "line": 284,
                              "column": 94
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9325,
                            "end": 9330,
                            "loc": {
                              "start": {
                                "line": 284,
                                "column": 3
                              },
                              "end": {
                                "line": 284,
                                "column": 8
                              }
                            },
                            "name": "index"
                          },
                          "init": {
                            "type": "TemplateLiteral",
                            "start": 9333,
                            "end": 9416,
                            "loc": {
                              "start": {
                                "line": 284,
                                "column": 11
                              },
                              "end": {
                                "line": 284,
                                "column": 94
                              }
                            },
                            "expressions": [
                              {
                                "type": "CallExpression",
                                "start": 9337,
                                "end": 9366,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 44
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9337,
                                  "end": 9364,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9337,
                                    "end": 9351,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9337,
                                      "end": 9345,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 23
                                        }
                                      },
                                      "name": "material"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9346,
                                      "end": 9351,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 29
                                        }
                                      },
                                      "name": "color"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9352,
                                    "end": 9364,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 42
                                      }
                                    },
                                    "name": "getHexString"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              {
                                "type": "CallExpression",
                                "start": 9370,
                                "end": 9397,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 75
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9370,
                                  "end": 9394,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 72
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9370,
                                    "end": 9386,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9370,
                                      "end": 9378,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 56
                                        }
                                      },
                                      "name": "material"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9379,
                                      "end": 9386,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 64
                                        }
                                      },
                                      "name": "opacity"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9387,
                                    "end": 9394,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 72
                                      }
                                    },
                                    "name": "toFixed"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 9395,
                                    "end": 9396,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 73
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 74
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  }
                                ]
                              },
                              {
                                "type": "MemberExpression",
                                "start": 9401,
                                "end": 9414,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 92
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9401,
                                  "end": 9409,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 87
                                    }
                                  },
                                  "name": "material"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9410,
                                  "end": 9414,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 88
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 92
                                    }
                                  },
                                  "name": "type"
                                },
                                "computed": false
                              }
                            ],
                            "quasis": [
                              {
                                "type": "TemplateElement",
                                "start": 9334,
                                "end": 9335,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 13
                                  }
                                },
                                "value": {
                                  "raw": "#",
                                  "cooked": "#"
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9367,
                                "end": 9368,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 46
                                  }
                                },
                                "value": {
                                  "raw": "_",
                                  "cooked": "_"
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9398,
                                "end": 9399,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 76
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 77
                                  }
                                },
                                "value": {
                                  "raw": "_",
                                  "cooked": "_"
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9415,
                                "end": 9415,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 93
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 93
                                  }
                                },
                                "value": {
                                  "raw": "",
                                  "cooked": ""
                                },
                                "tail": true
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9421,
                      "end": 9449,
                      "loc": {
                        "start": {
                          "line": 286,
                          "column": 2
                        },
                        "end": {
                          "line": 286,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9425,
                          "end": 9448,
                          "loc": {
                            "start": {
                              "line": 286,
                              "column": 6
                            },
                            "end": {
                              "line": 286,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9425,
                            "end": 9430,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 6
                              },
                              "end": {
                                "line": 286,
                                "column": 11
                              }
                            },
                            "name": "entry"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 9433,
                            "end": 9448,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 14
                              },
                              "end": {
                                "line": 286,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9433,
                              "end": 9441,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 14
                                },
                                "end": {
                                  "line": 286,
                                  "column": 22
                                }
                              },
                              "name": "colorMap"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9442,
                              "end": 9447,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 23
                                },
                                "end": {
                                  "line": 286,
                                  "column": 28
                                }
                              },
                              "name": "index"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 9453,
                      "end": 9692,
                      "loc": {
                        "start": {
                          "line": 288,
                          "column": 2
                        },
                        "end": {
                          "line": 298,
                          "column": 3
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 9457,
                        "end": 9463,
                        "loc": {
                          "start": {
                            "line": 288,
                            "column": 6
                          },
                          "end": {
                            "line": 288,
                            "column": 12
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 9458,
                          "end": 9463,
                          "loc": {
                            "start": {
                              "line": 288,
                              "column": 7
                            },
                            "end": {
                              "line": 288,
                              "column": 12
                            }
                          },
                          "name": "entry"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9468,
                        "end": 9495,
                        "loc": {
                          "start": {
                            "line": 289,
                            "column": 3
                          },
                          "end": {
                            "line": 289,
                            "column": 30
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 9468,
                          "end": 9494,
                          "loc": {
                            "start": {
                              "line": 289,
                              "column": 3
                            },
                            "end": {
                              "line": 289,
                              "column": 29
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 9468,
                            "end": 9483,
                            "loc": {
                              "start": {
                                "line": 289,
                                "column": 3
                              },
                              "end": {
                                "line": 289,
                                "column": 18
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9468,
                              "end": 9476,
                              "loc": {
                                "start": {
                                  "line": 289,
                                  "column": 3
                                },
                                "end": {
                                  "line": 289,
                                  "column": 11
                                }
                              },
                              "name": "colorMap"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9477,
                              "end": 9482,
                              "loc": {
                                "start": {
                                  "line": 289,
                                  "column": 12
                                },
                                "end": {
                                  "line": 289,
                                  "column": 17
                                }
                              },
                              "name": "index"
                            },
                            "computed": true
                          },
                          "right": {
                            "type": "Identifier",
                            "start": 9486,
                            "end": 9494,
                            "loc": {
                              "start": {
                                "line": 289,
                                "column": 21
                              },
                              "end": {
                                "line": 289,
                                "column": 29
                              }
                            },
                            "name": "material"
                          }
                        }
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 9503,
                        "end": 9692,
                        "loc": {
                          "start": {
                            "line": 290,
                            "column": 7
                          },
                          "end": {
                            "line": 298,
                            "column": 3
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 9545,
                            "end": 9688,
                            "loc": {
                              "start": {
                                "line": 292,
                                "column": 3
                              },
                              "end": {
                                "line": 297,
                                "column": 6
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 9545,
                              "end": 9687,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 3
                                },
                                "end": {
                                  "line": 297,
                                  "column": 5
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9545,
                                "end": 9558,
                                "loc": {
                                  "start": {
                                    "line": 292,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 292,
                                    "column": 16
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 9545,
                                  "end": 9549,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 7
                                    }
                                  },
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9550,
                                  "end": 9558,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 16
                                    }
                                  },
                                  "name": "traverse"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "FunctionExpression",
                                  "start": 9559,
                                  "end": 9686,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 297,
                                      "column": 4
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 9568,
                                      "end": 9573,
                                      "loc": {
                                        "start": {
                                          "line": 292,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 292,
                                          "column": 31
                                        }
                                      },
                                      "name": "child"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 9575,
                                    "end": 9686,
                                    "loc": {
                                      "start": {
                                        "line": 292,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 297,
                                        "column": 4
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 9581,
                                        "end": 9681,
                                        "loc": {
                                          "start": {
                                            "line": 293,
                                            "column": 4
                                          },
                                          "end": {
                                            "line": 296,
                                            "column": 5
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 9585,
                                          "end": 9612,
                                          "loc": {
                                            "start": {
                                              "line": 293,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 293,
                                              "column": 35
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 9585,
                                            "end": 9599,
                                            "loc": {
                                              "start": {
                                                "line": 293,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 293,
                                                "column": 22
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 9585,
                                              "end": 9590,
                                              "loc": {
                                                "start": {
                                                  "line": 293,
                                                  "column": 8
                                                },
                                                "end": {
                                                  "line": 293,
                                                  "column": 13
                                                }
                                              },
                                              "name": "child"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 9591,
                                              "end": 9599,
                                              "loc": {
                                                "start": {
                                                  "line": 293,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 293,
                                                  "column": 22
                                                }
                                              },
                                              "name": "material"
                                            },
                                            "computed": false
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 9604,
                                            "end": 9612,
                                            "loc": {
                                              "start": {
                                                "line": 293,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 293,
                                                "column": 35
                                              }
                                            },
                                            "name": "material"
                                          }
                                        },
                                        "consequent": {
                                          "type": "BlockStatement",
                                          "start": 9614,
                                          "end": 9681,
                                          "loc": {
                                            "start": {
                                              "line": 293,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 296,
                                              "column": 5
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 9621,
                                              "end": 9646,
                                              "loc": {
                                                "start": {
                                                  "line": 294,
                                                  "column": 5
                                                },
                                                "end": {
                                                  "line": 294,
                                                  "column": 30
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 9621,
                                                "end": 9645,
                                                "loc": {
                                                  "start": {
                                                    "line": 294,
                                                    "column": 5
                                                  },
                                                  "end": {
                                                    "line": 294,
                                                    "column": 29
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 9621,
                                                  "end": 9643,
                                                  "loc": {
                                                    "start": {
                                                      "line": 294,
                                                      "column": 5
                                                    },
                                                    "end": {
                                                      "line": 294,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 9621,
                                                    "end": 9635,
                                                    "loc": {
                                                      "start": {
                                                        "line": 294,
                                                        "column": 5
                                                      },
                                                      "end": {
                                                        "line": 294,
                                                        "column": 19
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 9621,
                                                      "end": 9626,
                                                      "loc": {
                                                        "start": {
                                                          "line": 294,
                                                          "column": 5
                                                        },
                                                        "end": {
                                                          "line": 294,
                                                          "column": 10
                                                        }
                                                      },
                                                      "name": "child"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 9627,
                                                      "end": 9635,
                                                      "loc": {
                                                        "start": {
                                                          "line": 294,
                                                          "column": 11
                                                        },
                                                        "end": {
                                                          "line": 294,
                                                          "column": 19
                                                        }
                                                      },
                                                      "name": "material"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 9636,
                                                    "end": 9643,
                                                    "loc": {
                                                      "start": {
                                                        "line": 294,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 294,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "dispose"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": []
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 9652,
                                              "end": 9675,
                                              "loc": {
                                                "start": {
                                                  "line": 295,
                                                  "column": 5
                                                },
                                                "end": {
                                                  "line": 295,
                                                  "column": 28
                                                }
                                              },
                                              "expression": {
                                                "type": "AssignmentExpression",
                                                "start": 9652,
                                                "end": 9674,
                                                "loc": {
                                                  "start": {
                                                    "line": 295,
                                                    "column": 5
                                                  },
                                                  "end": {
                                                    "line": 295,
                                                    "column": 27
                                                  }
                                                },
                                                "operator": "=",
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 9652,
                                                  "end": 9666,
                                                  "loc": {
                                                    "start": {
                                                      "line": 295,
                                                      "column": 5
                                                    },
                                                    "end": {
                                                      "line": 295,
                                                      "column": 19
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 9652,
                                                    "end": 9657,
                                                    "loc": {
                                                      "start": {
                                                        "line": 295,
                                                        "column": 5
                                                      },
                                                      "end": {
                                                        "line": 295,
                                                        "column": 10
                                                      }
                                                    },
                                                    "name": "child"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 9658,
                                                    "end": 9666,
                                                    "loc": {
                                                      "start": {
                                                        "line": 295,
                                                        "column": 11
                                                      },
                                                      "end": {
                                                        "line": 295,
                                                        "column": 19
                                                      }
                                                    },
                                                    "name": "material"
                                                  },
                                                  "computed": false
                                                },
                                                "right": {
                                                  "type": "Identifier",
                                                  "start": 9669,
                                                  "end": 9674,
                                                  "loc": {
                                                    "start": {
                                                      "line": 295,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 295,
                                                      "column": 27
                                                    }
                                                  },
                                                  "name": "entry"
                                                }
                                              }
                                            }
                                          ]
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  }
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " This material is already known",
                                "start": 9508,
                                "end": 9541,
                                "loc": {
                                  "start": {
                                    "line": 291,
                                    "column": 3
                                  },
                                  "end": {
                                    "line": 291,
                                    "column": 36
                                  }
                                },
                                "range": [
                                  9508,
                                  9541
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                },
                "leadingComments": [
                  {
                    "type": "CommentLine",
                    "value": " Compress materials",
                    "start": 9198,
                    "end": 9219,
                    "loc": {
                      "start": {
                        "line": 281,
                        "column": 1
                      },
                      "end": {
                        "line": 281,
                        "column": 22
                      }
                    },
                    "range": [
                      9198,
                      9219
                    ]
                  }
                ]
              },
              {
                "type": "ExpressionStatement",
                "start": 9698,
                "end": 9721,
                "loc": {
                  "start": {
                    "line": 301,
                    "column": 1
                  },
                  "end": {
                    "line": 301,
                    "column": 24
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 9698,
                  "end": 9720,
                  "loc": {
                    "start": {
                      "line": 301,
                      "column": 1
                    },
                    "end": {
                      "line": 301,
                      "column": 23
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 9698,
                    "end": 9718,
                    "loc": {
                      "start": {
                        "line": 301,
                        "column": 1
                      },
                      "end": {
                        "line": 301,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 9698,
                      "end": 9702,
                      "loc": {
                        "start": {
                          "line": 301,
                          "column": 1
                        },
                        "end": {
                          "line": 301,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9703,
                      "end": 9718,
                      "loc": {
                        "start": {
                          "line": 301,
                          "column": 6
                        },
                        "end": {
                          "line": 301,
                          "column": 21
                        }
                      },
                      "name": "updateMaterials"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              },
              {
                "type": "ReturnStatement",
                "start": 9723,
                "end": 9735,
                "loc": {
                  "start": {
                    "line": 302,
                    "column": 1
                  },
                  "end": {
                    "line": 302,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 9730,
                  "end": 9734,
                  "loc": {
                    "start": {
                      "line": 302,
                      "column": 8
                    },
                    "end": {
                      "line": 302,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 9739,
      "end": 9869,
      "loc": {
        "start": {
          "line": 305,
          "column": 0
        },
        "end": {
          "line": 307,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 9739,
        "end": 9869,
        "loc": {
          "start": {
            "line": 305,
            "column": 0
          },
          "end": {
            "line": 307,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 9739,
          "end": 9771,
          "loc": {
            "start": {
              "line": 305,
              "column": 0
            },
            "end": {
              "line": 305,
              "column": 32
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 9739,
            "end": 9763,
            "loc": {
              "start": {
                "line": 305,
                "column": 0
              },
              "end": {
                "line": 305,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 9739,
              "end": 9753,
              "loc": {
                "start": {
                  "line": 305,
                  "column": 0
                },
                "end": {
                  "line": 305,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 9739,
                "end": 9744,
                "loc": {
                  "start": {
                    "line": 305,
                    "column": 0
                  },
                  "end": {
                    "line": 305,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 9745,
                "end": 9753,
                "loc": {
                  "start": {
                    "line": 305,
                    "column": 6
                  },
                  "end": {
                    "line": 305,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 9754,
              "end": 9763,
              "loc": {
                "start": {
                  "line": 305,
                  "column": 15
                },
                "end": {
                  "line": 305,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 9764,
            "end": 9771,
            "loc": {
              "start": {
                "line": 305,
                "column": 25
              },
              "end": {
                "line": 305,
                "column": 32
              }
            },
            "name": "animate"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 9774,
          "end": 9869,
          "loc": {
            "start": {
              "line": 305,
              "column": 35
            },
            "end": {
              "line": 307,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 9764,
            "end": 9771,
            "loc": {
              "start": {
                "line": 305,
                "column": 25
              },
              "end": {
                "line": 305,
                "column": 32
              }
            },
            "name": "animate"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 9783,
              "end": 9793,
              "loc": {
                "start": {
                  "line": 305,
                  "column": 44
                },
                "end": {
                  "line": 305,
                  "column": 54
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 9795,
            "end": 9869,
            "loc": {
              "start": {
                "line": 305,
                "column": 56
              },
              "end": {
                "line": 307,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 9798,
                "end": 9867,
                "loc": {
                  "start": {
                    "line": 306,
                    "column": 1
                  },
                  "end": {
                    "line": 306,
                    "column": 70
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 9805,
                  "end": 9866,
                  "loc": {
                    "start": {
                      "line": 306,
                      "column": 8
                    },
                    "end": {
                      "line": 306,
                      "column": 69
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 9805,
                    "end": 9816,
                    "loc": {
                      "start": {
                        "line": 306,
                        "column": 8
                      },
                      "end": {
                        "line": 306,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 9805,
                      "end": 9809,
                      "loc": {
                        "start": {
                          "line": 306,
                          "column": 8
                        },
                        "end": {
                          "line": 306,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9810,
                      "end": 9816,
                      "loc": {
                        "start": {
                          "line": 306,
                          "column": 13
                        },
                        "end": {
                          "line": 306,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 9819,
                    "end": 9846,
                    "loc": {
                      "start": {
                        "line": 306,
                        "column": 22
                      },
                      "end": {
                        "line": 306,
                        "column": 49
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 9823,
                      "end": 9828,
                      "loc": {
                        "start": {
                          "line": 306,
                          "column": 26
                        },
                        "end": {
                          "line": 306,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 9829,
                        "end": 9833,
                        "loc": {
                          "start": {
                            "line": 306,
                            "column": 32
                          },
                          "end": {
                            "line": 306,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "start": 9835,
                        "end": 9845,
                        "loc": {
                          "start": {
                            "line": 306,
                            "column": 38
                          },
                          "end": {
                            "line": 306,
                            "column": 48
                          }
                        },
                        "name": "properties"
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 9849,
                    "end": 9866,
                    "loc": {
                      "start": {
                        "line": 306,
                        "column": 52
                      },
                      "end": {
                        "line": 306,
                        "column": 69
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 9853,
                      "end": 9858,
                      "loc": {
                        "start": {
                          "line": 306,
                          "column": 56
                        },
                        "end": {
                          "line": 306,
                          "column": 61
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 9859,
                        "end": 9861,
                        "loc": {
                          "start": {
                            "line": 306,
                            "column": 62
                          },
                          "end": {
                            "line": 306,
                            "column": 64
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 9863,
                        "end": 9865,
                        "loc": {
                          "start": {
                            "line": 306,
                            "column": 66
                          },
                          "end": {
                            "line": 306,
                            "column": 68
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 9871,
      "end": 10025,
      "loc": {
        "start": {
          "line": 309,
          "column": 0
        },
        "end": {
          "line": 311,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 9871,
        "end": 10025,
        "loc": {
          "start": {
            "line": 309,
            "column": 0
          },
          "end": {
            "line": 311,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 9871,
          "end": 9912,
          "loc": {
            "start": {
              "line": 309,
              "column": 0
            },
            "end": {
              "line": 309,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 9871,
            "end": 9895,
            "loc": {
              "start": {
                "line": 309,
                "column": 0
              },
              "end": {
                "line": 309,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 9871,
              "end": 9885,
              "loc": {
                "start": {
                  "line": 309,
                  "column": 0
                },
                "end": {
                  "line": 309,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 9871,
                "end": 9876,
                "loc": {
                  "start": {
                    "line": 309,
                    "column": 0
                  },
                  "end": {
                    "line": 309,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 9877,
                "end": 9885,
                "loc": {
                  "start": {
                    "line": 309,
                    "column": 6
                  },
                  "end": {
                    "line": 309,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 9886,
              "end": 9895,
              "loc": {
                "start": {
                  "line": 309,
                  "column": 15
                },
                "end": {
                  "line": 309,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 9896,
            "end": 9912,
            "loc": {
              "start": {
                "line": 309,
                "column": 25
              },
              "end": {
                "line": 309,
                "column": 41
              }
            },
            "name": "animateMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 9915,
          "end": 10025,
          "loc": {
            "start": {
              "line": 309,
              "column": 44
            },
            "end": {
              "line": 311,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 9896,
            "end": 9912,
            "loc": {
              "start": {
                "line": 309,
                "column": 25
              },
              "end": {
                "line": 309,
                "column": 41
              }
            },
            "name": "animateMaterials"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 9924,
              "end": 9934,
              "loc": {
                "start": {
                  "line": 309,
                  "column": 53
                },
                "end": {
                  "line": 309,
                  "column": 63
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 9936,
            "end": 10025,
            "loc": {
              "start": {
                "line": 309,
                "column": 65
              },
              "end": {
                "line": 311,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 9939,
                "end": 10023,
                "loc": {
                  "start": {
                    "line": 310,
                    "column": 1
                  },
                  "end": {
                    "line": 310,
                    "column": 85
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 9946,
                  "end": 10022,
                  "loc": {
                    "start": {
                      "line": 310,
                      "column": 8
                    },
                    "end": {
                      "line": 310,
                      "column": 84
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 9946,
                    "end": 9957,
                    "loc": {
                      "start": {
                        "line": 310,
                        "column": 8
                      },
                      "end": {
                        "line": 310,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 9946,
                      "end": 9950,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 8
                        },
                        "end": {
                          "line": 310,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 9951,
                      "end": 9957,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 13
                        },
                        "end": {
                          "line": 310,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 9960,
                    "end": 10002,
                    "loc": {
                      "start": {
                        "line": 310,
                        "column": 22
                      },
                      "end": {
                        "line": 310,
                        "column": 64
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 9964,
                      "end": 9969,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 26
                        },
                        "end": {
                          "line": 310,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 9970,
                        "end": 9974,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 32
                          },
                          "end": {
                            "line": 310,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 9976,
                        "end": 10001,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 38
                          },
                          "end": {
                            "line": 310,
                            "column": 63
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 9978,
                            "end": 9999,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 40
                              },
                              "end": {
                                "line": 310,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 9978,
                              "end": 9987,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 40
                                },
                                "end": {
                                  "line": 310,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 9989,
                              "end": 9999,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 51
                                },
                                "end": {
                                  "line": 310,
                                  "column": 61
                                }
                              },
                              "name": "properties"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10005,
                    "end": 10022,
                    "loc": {
                      "start": {
                        "line": 310,
                        "column": 67
                      },
                      "end": {
                        "line": 310,
                        "column": 84
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10009,
                      "end": 10014,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 71
                        },
                        "end": {
                          "line": 310,
                          "column": 76
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10015,
                        "end": 10017,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 77
                          },
                          "end": {
                            "line": 310,
                            "column": 79
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10019,
                        "end": 10021,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 81
                          },
                          "end": {
                            "line": 310,
                            "column": 83
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10027,
      "end": 10195,
      "loc": {
        "start": {
          "line": 313,
          "column": 0
        },
        "end": {
          "line": 315,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10027,
        "end": 10195,
        "loc": {
          "start": {
            "line": 313,
            "column": 0
          },
          "end": {
            "line": 315,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10027,
          "end": 10071,
          "loc": {
            "start": {
              "line": 313,
              "column": 0
            },
            "end": {
              "line": 313,
              "column": 44
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10027,
            "end": 10051,
            "loc": {
              "start": {
                "line": 313,
                "column": 0
              },
              "end": {
                "line": 313,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10027,
              "end": 10041,
              "loc": {
                "start": {
                  "line": 313,
                  "column": 0
                },
                "end": {
                  "line": 313,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10027,
                "end": 10032,
                "loc": {
                  "start": {
                    "line": 313,
                    "column": 0
                  },
                  "end": {
                    "line": 313,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10033,
                "end": 10041,
                "loc": {
                  "start": {
                    "line": 313,
                    "column": 6
                  },
                  "end": {
                    "line": 313,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10042,
              "end": 10051,
              "loc": {
                "start": {
                  "line": 313,
                  "column": 15
                },
                "end": {
                  "line": 313,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10052,
            "end": 10071,
            "loc": {
              "start": {
                "line": 313,
                "column": 25
              },
              "end": {
                "line": 313,
                "column": 44
              }
            },
            "name": "animateAllMaterials"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10074,
          "end": 10195,
          "loc": {
            "start": {
              "line": 313,
              "column": 47
            },
            "end": {
              "line": 315,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10052,
            "end": 10071,
            "loc": {
              "start": {
                "line": 313,
                "column": 25
              },
              "end": {
                "line": 313,
                "column": 44
              }
            },
            "name": "animateAllMaterials"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10083,
              "end": 10093,
              "loc": {
                "start": {
                  "line": 313,
                  "column": 56
                },
                "end": {
                  "line": 313,
                  "column": 66
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10095,
            "end": 10195,
            "loc": {
              "start": {
                "line": 313,
                "column": 68
              },
              "end": {
                "line": 315,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10098,
                "end": 10193,
                "loc": {
                  "start": {
                    "line": 314,
                    "column": 1
                  },
                  "end": {
                    "line": 314,
                    "column": 96
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10105,
                  "end": 10192,
                  "loc": {
                    "start": {
                      "line": 314,
                      "column": 8
                    },
                    "end": {
                      "line": 314,
                      "column": 95
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10105,
                    "end": 10116,
                    "loc": {
                      "start": {
                        "line": 314,
                        "column": 8
                      },
                      "end": {
                        "line": 314,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10105,
                      "end": 10109,
                      "loc": {
                        "start": {
                          "line": 314,
                          "column": 8
                        },
                        "end": {
                          "line": 314,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10110,
                      "end": 10116,
                      "loc": {
                        "start": {
                          "line": 314,
                          "column": 13
                        },
                        "end": {
                          "line": 314,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10119,
                    "end": 10172,
                    "loc": {
                      "start": {
                        "line": 314,
                        "column": 22
                      },
                      "end": {
                        "line": 314,
                        "column": 75
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10123,
                      "end": 10128,
                      "loc": {
                        "start": {
                          "line": 314,
                          "column": 26
                        },
                        "end": {
                          "line": 314,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10129,
                        "end": 10133,
                        "loc": {
                          "start": {
                            "line": 314,
                            "column": 32
                          },
                          "end": {
                            "line": 314,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10135,
                        "end": 10171,
                        "loc": {
                          "start": {
                            "line": 314,
                            "column": 38
                          },
                          "end": {
                            "line": 314,
                            "column": 74
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 10137,
                            "end": 10169,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 40
                              },
                              "end": {
                                "line": 314,
                                "column": 72
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 10137,
                              "end": 10146,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 40
                                },
                                "end": {
                                  "line": 314,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "ObjectExpression",
                              "start": 10148,
                              "end": 10169,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 51
                                },
                                "end": {
                                  "line": 314,
                                  "column": 72
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 10150,
                                  "end": 10167,
                                  "loc": {
                                    "start": {
                                      "line": 314,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 314,
                                      "column": 70
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 10150,
                                    "end": 10153,
                                    "loc": {
                                      "start": {
                                        "line": 314,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 314,
                                        "column": 56
                                      }
                                    },
                                    "name": "all"
                                  },
                                  "value": {
                                    "type": "ArrayExpression",
                                    "start": 10155,
                                    "end": 10167,
                                    "loc": {
                                      "start": {
                                        "line": 314,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 314,
                                        "column": 70
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Identifier",
                                        "start": 10156,
                                        "end": 10166,
                                        "loc": {
                                          "start": {
                                            "line": 314,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 314,
                                            "column": 69
                                          }
                                        },
                                        "name": "properties"
                                      }
                                    ]
                                  },
                                  "kind": "init"
                                }
                              ]
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10175,
                    "end": 10192,
                    "loc": {
                      "start": {
                        "line": 314,
                        "column": 78
                      },
                      "end": {
                        "line": 314,
                        "column": 95
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10179,
                      "end": 10184,
                      "loc": {
                        "start": {
                          "line": 314,
                          "column": 82
                        },
                        "end": {
                          "line": 314,
                          "column": 87
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10185,
                        "end": 10187,
                        "loc": {
                          "start": {
                            "line": 314,
                            "column": 88
                          },
                          "end": {
                            "line": 314,
                            "column": 90
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10189,
                        "end": 10191,
                        "loc": {
                          "start": {
                            "line": 314,
                            "column": 92
                          },
                          "end": {
                            "line": 314,
                            "column": 94
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10197,
      "end": 10362,
      "loc": {
        "start": {
          "line": 317,
          "column": 0
        },
        "end": {
          "line": 319,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10197,
        "end": 10362,
        "loc": {
          "start": {
            "line": 317,
            "column": 0
          },
          "end": {
            "line": 319,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10197,
          "end": 10235,
          "loc": {
            "start": {
              "line": 317,
              "column": 0
            },
            "end": {
              "line": 317,
              "column": 38
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10197,
            "end": 10221,
            "loc": {
              "start": {
                "line": 317,
                "column": 0
              },
              "end": {
                "line": 317,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10197,
              "end": 10211,
              "loc": {
                "start": {
                  "line": 317,
                  "column": 0
                },
                "end": {
                  "line": 317,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10197,
                "end": 10202,
                "loc": {
                  "start": {
                    "line": 317,
                    "column": 0
                  },
                  "end": {
                    "line": 317,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10203,
                "end": 10211,
                "loc": {
                  "start": {
                    "line": 317,
                    "column": 6
                  },
                  "end": {
                    "line": 317,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10212,
              "end": 10221,
              "loc": {
                "start": {
                  "line": 317,
                  "column": 15
                },
                "end": {
                  "line": 317,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10222,
            "end": 10235,
            "loc": {
              "start": {
                "line": 317,
                "column": 25
              },
              "end": {
                "line": 317,
                "column": 38
              }
            },
            "name": "animateMeshes"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10238,
          "end": 10362,
          "loc": {
            "start": {
              "line": 317,
              "column": 41
            },
            "end": {
              "line": 319,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10222,
            "end": 10235,
            "loc": {
              "start": {
                "line": 317,
                "column": 25
              },
              "end": {
                "line": 317,
                "column": 38
              }
            },
            "name": "animateMeshes"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10247,
              "end": 10257,
              "loc": {
                "start": {
                  "line": 317,
                  "column": 50
                },
                "end": {
                  "line": 317,
                  "column": 60
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10259,
            "end": 10362,
            "loc": {
              "start": {
                "line": 317,
                "column": 62
              },
              "end": {
                "line": 319,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10262,
                "end": 10360,
                "loc": {
                  "start": {
                    "line": 318,
                    "column": 1
                  },
                  "end": {
                    "line": 318,
                    "column": 99
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10269,
                  "end": 10359,
                  "loc": {
                    "start": {
                      "line": 318,
                      "column": 8
                    },
                    "end": {
                      "line": 318,
                      "column": 98
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10269,
                    "end": 10280,
                    "loc": {
                      "start": {
                        "line": 318,
                        "column": 8
                      },
                      "end": {
                        "line": 318,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10269,
                      "end": 10273,
                      "loc": {
                        "start": {
                          "line": 318,
                          "column": 8
                        },
                        "end": {
                          "line": 318,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10274,
                      "end": 10280,
                      "loc": {
                        "start": {
                          "line": 318,
                          "column": 13
                        },
                        "end": {
                          "line": 318,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10283,
                    "end": 10339,
                    "loc": {
                      "start": {
                        "line": 318,
                        "column": 22
                      },
                      "end": {
                        "line": 318,
                        "column": 78
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10287,
                      "end": 10292,
                      "loc": {
                        "start": {
                          "line": 318,
                          "column": 26
                        },
                        "end": {
                          "line": 318,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10293,
                        "end": 10297,
                        "loc": {
                          "start": {
                            "line": 318,
                            "column": 32
                          },
                          "end": {
                            "line": 318,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10299,
                        "end": 10338,
                        "loc": {
                          "start": {
                            "line": 318,
                            "column": 38
                          },
                          "end": {
                            "line": 318,
                            "column": 77
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 10301,
                            "end": 10336,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 40
                              },
                              "end": {
                                "line": 318,
                                "column": 75
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 10301,
                              "end": 10310,
                              "loc": {
                                "start": {
                                  "line": 318,
                                  "column": 40
                                },
                                "end": {
                                  "line": 318,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "ObjectExpression",
                              "start": 10312,
                              "end": 10336,
                              "loc": {
                                "start": {
                                  "line": 318,
                                  "column": 51
                                },
                                "end": {
                                  "line": 318,
                                  "column": 75
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 10314,
                                  "end": 10334,
                                  "loc": {
                                    "start": {
                                      "line": 318,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 318,
                                      "column": 73
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 10314,
                                    "end": 10320,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 59
                                      }
                                    },
                                    "name": "meshes"
                                  },
                                  "value": {
                                    "type": "ArrayExpression",
                                    "start": 10322,
                                    "end": 10334,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 73
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Identifier",
                                        "start": 10323,
                                        "end": 10333,
                                        "loc": {
                                          "start": {
                                            "line": 318,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 318,
                                            "column": 72
                                          }
                                        },
                                        "name": "properties"
                                      }
                                    ]
                                  },
                                  "kind": "init"
                                }
                              ]
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10342,
                    "end": 10359,
                    "loc": {
                      "start": {
                        "line": 318,
                        "column": 81
                      },
                      "end": {
                        "line": 318,
                        "column": 98
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10346,
                      "end": 10351,
                      "loc": {
                        "start": {
                          "line": 318,
                          "column": 85
                        },
                        "end": {
                          "line": 318,
                          "column": 90
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10352,
                        "end": 10354,
                        "loc": {
                          "start": {
                            "line": 318,
                            "column": 91
                          },
                          "end": {
                            "line": 318,
                            "column": 93
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10356,
                        "end": 10358,
                        "loc": {
                          "start": {
                            "line": 318,
                            "column": 95
                          },
                          "end": {
                            "line": 318,
                            "column": 97
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10364,
      "end": 10527,
      "loc": {
        "start": {
          "line": 321,
          "column": 0
        },
        "end": {
          "line": 323,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10364,
        "end": 10527,
        "loc": {
          "start": {
            "line": 321,
            "column": 0
          },
          "end": {
            "line": 323,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10364,
          "end": 10401,
          "loc": {
            "start": {
              "line": 321,
              "column": 0
            },
            "end": {
              "line": 321,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10364,
            "end": 10388,
            "loc": {
              "start": {
                "line": 321,
                "column": 0
              },
              "end": {
                "line": 321,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10364,
              "end": 10378,
              "loc": {
                "start": {
                  "line": 321,
                  "column": 0
                },
                "end": {
                  "line": 321,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10364,
                "end": 10369,
                "loc": {
                  "start": {
                    "line": 321,
                    "column": 0
                  },
                  "end": {
                    "line": 321,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10370,
                "end": 10378,
                "loc": {
                  "start": {
                    "line": 321,
                    "column": 6
                  },
                  "end": {
                    "line": 321,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10379,
              "end": 10388,
              "loc": {
                "start": {
                  "line": 321,
                  "column": 15
                },
                "end": {
                  "line": 321,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10389,
            "end": 10401,
            "loc": {
              "start": {
                "line": 321,
                "column": 25
              },
              "end": {
                "line": 321,
                "column": 37
              }
            },
            "name": "animateLines"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10404,
          "end": 10527,
          "loc": {
            "start": {
              "line": 321,
              "column": 40
            },
            "end": {
              "line": 323,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10389,
            "end": 10401,
            "loc": {
              "start": {
                "line": 321,
                "column": 25
              },
              "end": {
                "line": 321,
                "column": 37
              }
            },
            "name": "animateLines"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10413,
              "end": 10423,
              "loc": {
                "start": {
                  "line": 321,
                  "column": 49
                },
                "end": {
                  "line": 321,
                  "column": 59
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10425,
            "end": 10527,
            "loc": {
              "start": {
                "line": 321,
                "column": 61
              },
              "end": {
                "line": 323,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 10428,
                "end": 10525,
                "loc": {
                  "start": {
                    "line": 322,
                    "column": 1
                  },
                  "end": {
                    "line": 322,
                    "column": 98
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 10435,
                  "end": 10524,
                  "loc": {
                    "start": {
                      "line": 322,
                      "column": 8
                    },
                    "end": {
                      "line": 322,
                      "column": 97
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 10435,
                    "end": 10446,
                    "loc": {
                      "start": {
                        "line": 322,
                        "column": 8
                      },
                      "end": {
                        "line": 322,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 10435,
                      "end": 10439,
                      "loc": {
                        "start": {
                          "line": 322,
                          "column": 8
                        },
                        "end": {
                          "line": 322,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10440,
                      "end": 10446,
                      "loc": {
                        "start": {
                          "line": 322,
                          "column": 13
                        },
                        "end": {
                          "line": 322,
                          "column": 19
                        }
                      },
                      "name": "tweens"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "NewExpression",
                    "start": 10449,
                    "end": 10504,
                    "loc": {
                      "start": {
                        "line": 322,
                        "column": 22
                      },
                      "end": {
                        "line": 322,
                        "column": 77
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10453,
                      "end": 10458,
                      "loc": {
                        "start": {
                          "line": 322,
                          "column": 26
                        },
                        "end": {
                          "line": 322,
                          "column": 31
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ThisExpression",
                        "start": 10459,
                        "end": 10463,
                        "loc": {
                          "start": {
                            "line": 322,
                            "column": 32
                          },
                          "end": {
                            "line": 322,
                            "column": 36
                          }
                        }
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10465,
                        "end": 10503,
                        "loc": {
                          "start": {
                            "line": 322,
                            "column": 38
                          },
                          "end": {
                            "line": 322,
                            "column": 76
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 10467,
                            "end": 10501,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 40
                              },
                              "end": {
                                "line": 322,
                                "column": 74
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 10467,
                              "end": 10476,
                              "loc": {
                                "start": {
                                  "line": 322,
                                  "column": 40
                                },
                                "end": {
                                  "line": 322,
                                  "column": 49
                                }
                              },
                              "name": "materials"
                            },
                            "value": {
                              "type": "ObjectExpression",
                              "start": 10478,
                              "end": 10501,
                              "loc": {
                                "start": {
                                  "line": 322,
                                  "column": 51
                                },
                                "end": {
                                  "line": 322,
                                  "column": 74
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 10480,
                                  "end": 10499,
                                  "loc": {
                                    "start": {
                                      "line": 322,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 322,
                                      "column": 72
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 10480,
                                    "end": 10485,
                                    "loc": {
                                      "start": {
                                        "line": 322,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 322,
                                        "column": 58
                                      }
                                    },
                                    "name": "lines"
                                  },
                                  "value": {
                                    "type": "ArrayExpression",
                                    "start": 10487,
                                    "end": 10499,
                                    "loc": {
                                      "start": {
                                        "line": 322,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 322,
                                        "column": 72
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Identifier",
                                        "start": 10488,
                                        "end": 10498,
                                        "loc": {
                                          "start": {
                                            "line": 322,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 322,
                                            "column": 71
                                          }
                                        },
                                        "name": "properties"
                                      }
                                    ]
                                  },
                                  "kind": "init"
                                }
                              ]
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    ]
                  },
                  "alternate": {
                    "type": "NewExpression",
                    "start": 10507,
                    "end": 10524,
                    "loc": {
                      "start": {
                        "line": 322,
                        "column": 80
                      },
                      "end": {
                        "line": 322,
                        "column": 97
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 10511,
                      "end": 10516,
                      "loc": {
                        "start": {
                          "line": 322,
                          "column": 84
                        },
                        "end": {
                          "line": 322,
                          "column": 89
                        }
                      },
                      "name": "Tween"
                    },
                    "arguments": [
                      {
                        "type": "ObjectExpression",
                        "start": 10517,
                        "end": 10519,
                        "loc": {
                          "start": {
                            "line": 322,
                            "column": 90
                          },
                          "end": {
                            "line": 322,
                            "column": 92
                          }
                        },
                        "properties": []
                      },
                      {
                        "type": "ObjectExpression",
                        "start": 10521,
                        "end": 10523,
                        "loc": {
                          "start": {
                            "line": 322,
                            "column": 94
                          },
                          "end": {
                            "line": 322,
                            "column": 96
                          }
                        },
                        "properties": []
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10529,
      "end": 10756,
      "loc": {
        "start": {
          "line": 325,
          "column": 0
        },
        "end": {
          "line": 333,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10529,
        "end": 10756,
        "loc": {
          "start": {
            "line": 325,
            "column": 0
          },
          "end": {
            "line": 333,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10529,
          "end": 10561,
          "loc": {
            "start": {
              "line": 325,
              "column": 0
            },
            "end": {
              "line": 325,
              "column": 32
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10529,
            "end": 10553,
            "loc": {
              "start": {
                "line": 325,
                "column": 0
              },
              "end": {
                "line": 325,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10529,
              "end": 10543,
              "loc": {
                "start": {
                  "line": 325,
                  "column": 0
                },
                "end": {
                  "line": 325,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10529,
                "end": 10534,
                "loc": {
                  "start": {
                    "line": 325,
                    "column": 0
                  },
                  "end": {
                    "line": 325,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10535,
                "end": 10543,
                "loc": {
                  "start": {
                    "line": 325,
                    "column": 6
                  },
                  "end": {
                    "line": 325,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10544,
              "end": 10553,
              "loc": {
                "start": {
                  "line": 325,
                  "column": 15
                },
                "end": {
                  "line": 325,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10554,
            "end": 10561,
            "loc": {
              "start": {
                "line": 325,
                "column": 25
              },
              "end": {
                "line": 325,
                "column": 32
              }
            },
            "name": "fadeOut"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10564,
          "end": 10756,
          "loc": {
            "start": {
              "line": 325,
              "column": 35
            },
            "end": {
              "line": 333,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10554,
            "end": 10561,
            "loc": {
              "start": {
                "line": 325,
                "column": 25
              },
              "end": {
                "line": 325,
                "column": 32
              }
            },
            "name": "fadeOut"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10573,
              "end": 10579,
              "loc": {
                "start": {
                  "line": 325,
                  "column": 44
                },
                "end": {
                  "line": 325,
                  "column": 50
                }
              },
              "name": "length"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10581,
            "end": 10756,
            "loc": {
              "start": {
                "line": 325,
                "column": 52
              },
              "end": {
                "line": 333,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 10587,
                "end": 10737,
                "loc": {
                  "start": {
                    "line": 326,
                    "column": 4
                  },
                  "end": {
                    "line": 331,
                    "column": 26
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 10587,
                  "end": 10736,
                  "loc": {
                    "start": {
                      "line": 326,
                      "column": 4
                    },
                    "end": {
                      "line": 331,
                      "column": 25
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 10587,
                    "end": 10723,
                    "loc": {
                      "start": {
                        "line": 326,
                        "column": 4
                      },
                      "end": {
                        "line": 331,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 10587,
                      "end": 10717,
                      "loc": {
                        "start": {
                          "line": 326,
                          "column": 4
                        },
                        "end": {
                          "line": 331,
                          "column": 6
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 10587,
                        "end": 10599,
                        "loc": {
                          "start": {
                            "line": 326,
                            "column": 4
                          },
                          "end": {
                            "line": 326,
                            "column": 16
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 10587,
                          "end": 10591,
                          "loc": {
                            "start": {
                              "line": 326,
                              "column": 4
                            },
                            "end": {
                              "line": 326,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 10592,
                          "end": 10599,
                          "loc": {
                            "start": {
                              "line": 326,
                              "column": 9
                            },
                            "end": {
                              "line": 326,
                              "column": 16
                            }
                          },
                          "name": "animate"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ObjectExpression",
                          "start": 10600,
                          "end": 10716,
                          "loc": {
                            "start": {
                              "line": 326,
                              "column": 17
                            },
                            "end": {
                              "line": 331,
                              "column": 5
                            }
                          },
                          "properties": [
                            {
                              "type": "Property",
                              "start": 10610,
                              "end": 10710,
                              "loc": {
                                "start": {
                                  "line": 327,
                                  "column": 8
                                },
                                "end": {
                                  "line": 330,
                                  "column": 9
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 10610,
                                "end": 10619,
                                "loc": {
                                  "start": {
                                    "line": 327,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 327,
                                    "column": 17
                                  }
                                },
                                "name": "materials"
                              },
                              "value": {
                                "type": "ObjectExpression",
                                "start": 10621,
                                "end": 10710,
                                "loc": {
                                  "start": {
                                    "line": 327,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 330,
                                    "column": 9
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 10635,
                                    "end": 10661,
                                    "loc": {
                                      "start": {
                                        "line": 328,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 328,
                                        "column": 38
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 10635,
                                      "end": 10641,
                                      "loc": {
                                        "start": {
                                          "line": 328,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 328,
                                          "column": 18
                                        }
                                      },
                                      "name": "meshes"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 10643,
                                      "end": 10661,
                                      "loc": {
                                        "start": {
                                          "line": 328,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 328,
                                          "column": 38
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 10644,
                                          "end": 10660,
                                          "loc": {
                                            "start": {
                                              "line": 328,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 328,
                                              "column": 37
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 10646,
                                              "end": 10658,
                                              "loc": {
                                                "start": {
                                                  "line": 328,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 328,
                                                  "column": 35
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 10646,
                                                "end": 10653,
                                                "loc": {
                                                  "start": {
                                                    "line": 328,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 328,
                                                    "column": 30
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "Literal",
                                                "start": 10655,
                                                "end": 10658,
                                                "loc": {
                                                  "start": {
                                                    "line": 328,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 328,
                                                    "column": 35
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0.0"
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  },
                                  {
                                    "type": "Property",
                                    "start": 10675,
                                    "end": 10700,
                                    "loc": {
                                      "start": {
                                        "line": 329,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 329,
                                        "column": 37
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 10675,
                                      "end": 10680,
                                      "loc": {
                                        "start": {
                                          "line": 329,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 329,
                                          "column": 17
                                        }
                                      },
                                      "name": "lines"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 10682,
                                      "end": 10700,
                                      "loc": {
                                        "start": {
                                          "line": 329,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 329,
                                          "column": 37
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 10683,
                                          "end": 10699,
                                          "loc": {
                                            "start": {
                                              "line": 329,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 329,
                                              "column": 36
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 10685,
                                              "end": 10697,
                                              "loc": {
                                                "start": {
                                                  "line": 329,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 329,
                                                  "column": 34
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 10685,
                                                "end": 10692,
                                                "loc": {
                                                  "start": {
                                                    "line": 329,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 329,
                                                    "column": 29
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "Literal",
                                                "start": 10694,
                                                "end": 10697,
                                                "loc": {
                                                  "start": {
                                                    "line": 329,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 329,
                                                    "column": 34
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0.0"
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  }
                                ]
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10718,
                      "end": 10723,
                      "loc": {
                        "start": {
                          "line": 331,
                          "column": 7
                        },
                        "end": {
                          "line": 331,
                          "column": 12
                        }
                      },
                      "name": "start"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "LogicalExpression",
                      "start": 10724,
                      "end": 10735,
                      "loc": {
                        "start": {
                          "line": 331,
                          "column": 13
                        },
                        "end": {
                          "line": 331,
                          "column": 24
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 10724,
                        "end": 10730,
                        "loc": {
                          "start": {
                            "line": 331,
                            "column": 13
                          },
                          "end": {
                            "line": 331,
                            "column": 19
                          }
                        },
                        "name": "length"
                      },
                      "operator": "||",
                      "right": {
                        "type": "Literal",
                        "start": 10734,
                        "end": 10735,
                        "loc": {
                          "start": {
                            "line": 331,
                            "column": 23
                          },
                          "end": {
                            "line": 331,
                            "column": 24
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 10742,
                "end": 10754,
                "loc": {
                  "start": {
                    "line": 332,
                    "column": 4
                  },
                  "end": {
                    "line": 332,
                    "column": 16
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 10749,
                  "end": 10753,
                  "loc": {
                    "start": {
                      "line": 332,
                      "column": 11
                    },
                    "end": {
                      "line": 332,
                      "column": 15
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 10758,
      "end": 11009,
      "loc": {
        "start": {
          "line": 335,
          "column": 0
        },
        "end": {
          "line": 343,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 10758,
        "end": 11009,
        "loc": {
          "start": {
            "line": 335,
            "column": 0
          },
          "end": {
            "line": 343,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 10758,
          "end": 10789,
          "loc": {
            "start": {
              "line": 335,
              "column": 0
            },
            "end": {
              "line": 335,
              "column": 31
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 10758,
            "end": 10782,
            "loc": {
              "start": {
                "line": 335,
                "column": 0
              },
              "end": {
                "line": 335,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 10758,
              "end": 10772,
              "loc": {
                "start": {
                  "line": 335,
                  "column": 0
                },
                "end": {
                  "line": 335,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 10758,
                "end": 10763,
                "loc": {
                  "start": {
                    "line": 335,
                    "column": 0
                  },
                  "end": {
                    "line": 335,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 10764,
                "end": 10772,
                "loc": {
                  "start": {
                    "line": 335,
                    "column": 6
                  },
                  "end": {
                    "line": 335,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 10773,
              "end": 10782,
              "loc": {
                "start": {
                  "line": 335,
                  "column": 15
                },
                "end": {
                  "line": 335,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 10783,
            "end": 10789,
            "loc": {
              "start": {
                "line": 335,
                "column": 25
              },
              "end": {
                "line": 335,
                "column": 31
              }
            },
            "name": "fadeIn"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 10792,
          "end": 11009,
          "loc": {
            "start": {
              "line": 335,
              "column": 34
            },
            "end": {
              "line": 343,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 10783,
            "end": 10789,
            "loc": {
              "start": {
                "line": 335,
                "column": 25
              },
              "end": {
                "line": 335,
                "column": 31
              }
            },
            "name": "fadeIn"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 10801,
              "end": 10807,
              "loc": {
                "start": {
                  "line": 335,
                  "column": 43
                },
                "end": {
                  "line": 335,
                  "column": 49
                }
              },
              "name": "length"
            },
            {
              "type": "Identifier",
              "start": 10809,
              "end": 10814,
              "loc": {
                "start": {
                  "line": 335,
                  "column": 51
                },
                "end": {
                  "line": 335,
                  "column": 56
                }
              },
              "name": "value"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 10816,
            "end": 11009,
            "loc": {
              "start": {
                "line": 335,
                "column": 58
              },
              "end": {
                "line": 343,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 10822,
                "end": 10990,
                "loc": {
                  "start": {
                    "line": 336,
                    "column": 4
                  },
                  "end": {
                    "line": 341,
                    "column": 26
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 10822,
                  "end": 10989,
                  "loc": {
                    "start": {
                      "line": 336,
                      "column": 4
                    },
                    "end": {
                      "line": 341,
                      "column": 25
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 10822,
                    "end": 10976,
                    "loc": {
                      "start": {
                        "line": 336,
                        "column": 4
                      },
                      "end": {
                        "line": 341,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 10822,
                      "end": 10970,
                      "loc": {
                        "start": {
                          "line": 336,
                          "column": 4
                        },
                        "end": {
                          "line": 341,
                          "column": 6
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 10822,
                        "end": 10834,
                        "loc": {
                          "start": {
                            "line": 336,
                            "column": 4
                          },
                          "end": {
                            "line": 336,
                            "column": 16
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 10822,
                          "end": 10826,
                          "loc": {
                            "start": {
                              "line": 336,
                              "column": 4
                            },
                            "end": {
                              "line": 336,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 10827,
                          "end": 10834,
                          "loc": {
                            "start": {
                              "line": 336,
                              "column": 9
                            },
                            "end": {
                              "line": 336,
                              "column": 16
                            }
                          },
                          "name": "animate"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ObjectExpression",
                          "start": 10835,
                          "end": 10969,
                          "loc": {
                            "start": {
                              "line": 336,
                              "column": 17
                            },
                            "end": {
                              "line": 341,
                              "column": 5
                            }
                          },
                          "properties": [
                            {
                              "type": "Property",
                              "start": 10845,
                              "end": 10963,
                              "loc": {
                                "start": {
                                  "line": 337,
                                  "column": 8
                                },
                                "end": {
                                  "line": 340,
                                  "column": 9
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 10845,
                                "end": 10854,
                                "loc": {
                                  "start": {
                                    "line": 337,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 337,
                                    "column": 17
                                  }
                                },
                                "name": "materials"
                              },
                              "value": {
                                "type": "ObjectExpression",
                                "start": 10856,
                                "end": 10963,
                                "loc": {
                                  "start": {
                                    "line": 337,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 340,
                                    "column": 9
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 10870,
                                    "end": 10905,
                                    "loc": {
                                      "start": {
                                        "line": 338,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 338,
                                        "column": 47
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 10870,
                                      "end": 10876,
                                      "loc": {
                                        "start": {
                                          "line": 338,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 338,
                                          "column": 18
                                        }
                                      },
                                      "name": "meshes"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 10878,
                                      "end": 10905,
                                      "loc": {
                                        "start": {
                                          "line": 338,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 338,
                                          "column": 47
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 10879,
                                          "end": 10904,
                                          "loc": {
                                            "start": {
                                              "line": 338,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 338,
                                              "column": 46
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 10881,
                                              "end": 10902,
                                              "loc": {
                                                "start": {
                                                  "line": 338,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 338,
                                                  "column": 44
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 10881,
                                                "end": 10888,
                                                "loc": {
                                                  "start": {
                                                    "line": 338,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 338,
                                                    "column": 30
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "LogicalExpression",
                                                "start": 10890,
                                                "end": 10902,
                                                "loc": {
                                                  "start": {
                                                    "line": 338,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 338,
                                                    "column": 44
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 10890,
                                                  "end": 10895,
                                                  "loc": {
                                                    "start": {
                                                      "line": 338,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 338,
                                                      "column": 37
                                                    }
                                                  },
                                                  "name": "value"
                                                },
                                                "operator": "||",
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 10899,
                                                  "end": 10902,
                                                  "loc": {
                                                    "start": {
                                                      "line": 338,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 338,
                                                      "column": 44
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1.0"
                                                }
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  },
                                  {
                                    "type": "Property",
                                    "start": 10919,
                                    "end": 10953,
                                    "loc": {
                                      "start": {
                                        "line": 339,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 339,
                                        "column": 46
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 10919,
                                      "end": 10924,
                                      "loc": {
                                        "start": {
                                          "line": 339,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 339,
                                          "column": 17
                                        }
                                      },
                                      "name": "lines"
                                    },
                                    "value": {
                                      "type": "ArrayExpression",
                                      "start": 10926,
                                      "end": 10953,
                                      "loc": {
                                        "start": {
                                          "line": 339,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 339,
                                          "column": 46
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "ObjectExpression",
                                          "start": 10927,
                                          "end": 10952,
                                          "loc": {
                                            "start": {
                                              "line": 339,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 339,
                                              "column": 45
                                            }
                                          },
                                          "properties": [
                                            {
                                              "type": "Property",
                                              "start": 10929,
                                              "end": 10950,
                                              "loc": {
                                                "start": {
                                                  "line": 339,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 339,
                                                  "column": 43
                                                }
                                              },
                                              "method": false,
                                              "shorthand": false,
                                              "computed": false,
                                              "key": {
                                                "type": "Identifier",
                                                "start": 10929,
                                                "end": 10936,
                                                "loc": {
                                                  "start": {
                                                    "line": 339,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 339,
                                                    "column": 29
                                                  }
                                                },
                                                "name": "opacity"
                                              },
                                              "value": {
                                                "type": "LogicalExpression",
                                                "start": 10938,
                                                "end": 10950,
                                                "loc": {
                                                  "start": {
                                                    "line": 339,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 339,
                                                    "column": 43
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 10938,
                                                  "end": 10943,
                                                  "loc": {
                                                    "start": {
                                                      "line": 339,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 339,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "value"
                                                },
                                                "operator": "||",
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 10947,
                                                  "end": 10950,
                                                  "loc": {
                                                    "start": {
                                                      "line": 339,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 339,
                                                      "column": 43
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1.0"
                                                }
                                              },
                                              "kind": "init"
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  }
                                ]
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 10971,
                      "end": 10976,
                      "loc": {
                        "start": {
                          "line": 341,
                          "column": 7
                        },
                        "end": {
                          "line": 341,
                          "column": 12
                        }
                      },
                      "name": "start"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "LogicalExpression",
                      "start": 10977,
                      "end": 10988,
                      "loc": {
                        "start": {
                          "line": 341,
                          "column": 13
                        },
                        "end": {
                          "line": 341,
                          "column": 24
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 10977,
                        "end": 10983,
                        "loc": {
                          "start": {
                            "line": 341,
                            "column": 13
                          },
                          "end": {
                            "line": 341,
                            "column": 19
                          }
                        },
                        "name": "length"
                      },
                      "operator": "||",
                      "right": {
                        "type": "Literal",
                        "start": 10987,
                        "end": 10988,
                        "loc": {
                          "start": {
                            "line": 341,
                            "column": 23
                          },
                          "end": {
                            "line": 341,
                            "column": 24
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 10995,
                "end": 11007,
                "loc": {
                  "start": {
                    "line": 342,
                    "column": 4
                  },
                  "end": {
                    "line": 342,
                    "column": 16
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 11002,
                  "end": 11006,
                  "loc": {
                    "start": {
                      "line": 342,
                      "column": 11
                    },
                    "end": {
                      "line": 342,
                      "column": 15
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11011,
      "end": 11118,
      "loc": {
        "start": {
          "line": 345,
          "column": 0
        },
        "end": {
          "line": 347,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11011,
        "end": 11118,
        "loc": {
          "start": {
            "line": 345,
            "column": 0
          },
          "end": {
            "line": 347,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11011,
          "end": 11045,
          "loc": {
            "start": {
              "line": 345,
              "column": 0
            },
            "end": {
              "line": 345,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11011,
            "end": 11035,
            "loc": {
              "start": {
                "line": 345,
                "column": 0
              },
              "end": {
                "line": 345,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11011,
              "end": 11025,
              "loc": {
                "start": {
                  "line": 345,
                  "column": 0
                },
                "end": {
                  "line": 345,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11011,
                "end": 11016,
                "loc": {
                  "start": {
                    "line": 345,
                    "column": 0
                  },
                  "end": {
                    "line": 345,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11017,
                "end": 11025,
                "loc": {
                  "start": {
                    "line": 345,
                    "column": 6
                  },
                  "end": {
                    "line": 345,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11026,
              "end": 11035,
              "loc": {
                "start": {
                  "line": 345,
                  "column": 15
                },
                "end": {
                  "line": 345,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11036,
            "end": 11045,
            "loc": {
              "start": {
                "line": 345,
                "column": 25
              },
              "end": {
                "line": 345,
                "column": 34
              }
            },
            "name": "setValues"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11048,
          "end": 11118,
          "loc": {
            "start": {
              "line": 345,
              "column": 37
            },
            "end": {
              "line": 347,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11036,
            "end": 11045,
            "loc": {
              "start": {
                "line": 345,
                "column": 25
              },
              "end": {
                "line": 345,
                "column": 34
              }
            },
            "name": "setValues"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11057,
              "end": 11067,
              "loc": {
                "start": {
                  "line": 345,
                  "column": 46
                },
                "end": {
                  "line": 345,
                  "column": 56
                }
              },
              "name": "properties"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11069,
            "end": 11118,
            "loc": {
              "start": {
                "line": 345,
                "column": 58
              },
              "end": {
                "line": 347,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 11072,
                "end": 11116,
                "loc": {
                  "start": {
                    "line": 346,
                    "column": 1
                  },
                  "end": {
                    "line": 346,
                    "column": 45
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 11079,
                  "end": 11115,
                  "loc": {
                    "start": {
                      "line": 346,
                      "column": 8
                    },
                    "end": {
                      "line": 346,
                      "column": 44
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 11079,
                    "end": 11112,
                    "loc": {
                      "start": {
                        "line": 346,
                        "column": 8
                      },
                      "end": {
                        "line": 346,
                        "column": 41
                      }
                    },
                    "object": {
                      "type": "NewExpression",
                      "start": 11079,
                      "end": 11106,
                      "loc": {
                        "start": {
                          "line": 346,
                          "column": 8
                        },
                        "end": {
                          "line": 346,
                          "column": 35
                        }
                      },
                      "callee": {
                        "type": "Identifier",
                        "start": 11083,
                        "end": 11088,
                        "loc": {
                          "start": {
                            "line": 346,
                            "column": 12
                          },
                          "end": {
                            "line": 346,
                            "column": 17
                          }
                        },
                        "name": "Tween"
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 11089,
                          "end": 11093,
                          "loc": {
                            "start": {
                              "line": 346,
                              "column": 18
                            },
                            "end": {
                              "line": 346,
                              "column": 22
                            }
                          }
                        },
                        {
                          "type": "Identifier",
                          "start": 11095,
                          "end": 11105,
                          "loc": {
                            "start": {
                              "line": 346,
                              "column": 24
                            },
                            "end": {
                              "line": 346,
                              "column": 34
                            }
                          },
                          "name": "properties"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11107,
                      "end": 11112,
                      "loc": {
                        "start": {
                          "line": 346,
                          "column": 36
                        },
                        "end": {
                          "line": 346,
                          "column": 41
                        }
                      },
                      "name": "start"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Literal",
                      "start": 11113,
                      "end": 11114,
                      "loc": {
                        "start": {
                          "line": 346,
                          "column": 42
                        },
                        "end": {
                          "line": 346,
                          "column": 43
                        }
                      },
                      "value": 0,
                      "rawValue": 0,
                      "raw": "0"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11120,
      "end": 11325,
      "loc": {
        "start": {
          "line": 349,
          "column": 0
        },
        "end": {
          "line": 355,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11120,
        "end": 11325,
        "loc": {
          "start": {
            "line": 349,
            "column": 0
          },
          "end": {
            "line": 355,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11120,
          "end": 11149,
          "loc": {
            "start": {
              "line": 349,
              "column": 0
            },
            "end": {
              "line": 349,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11120,
            "end": 11144,
            "loc": {
              "start": {
                "line": 349,
                "column": 0
              },
              "end": {
                "line": 349,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11120,
              "end": 11134,
              "loc": {
                "start": {
                  "line": 349,
                  "column": 0
                },
                "end": {
                  "line": 349,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11120,
                "end": 11125,
                "loc": {
                  "start": {
                    "line": 349,
                    "column": 0
                  },
                  "end": {
                    "line": 349,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11126,
                "end": 11134,
                "loc": {
                  "start": {
                    "line": 349,
                    "column": 6
                  },
                  "end": {
                    "line": 349,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11135,
              "end": 11144,
              "loc": {
                "start": {
                  "line": 349,
                  "column": 15
                },
                "end": {
                  "line": 349,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11145,
            "end": 11149,
            "loc": {
              "start": {
                "line": 349,
                "column": 25
              },
              "end": {
                "line": 349,
                "column": 29
              }
            },
            "name": "root"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11152,
          "end": 11325,
          "loc": {
            "start": {
              "line": 349,
              "column": 32
            },
            "end": {
              "line": 355,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11145,
            "end": 11149,
            "loc": {
              "start": {
                "line": 349,
                "column": 25
              },
              "end": {
                "line": 349,
                "column": 29
              }
            },
            "name": "root"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 11163,
            "end": 11325,
            "loc": {
              "start": {
                "line": 349,
                "column": 43
              },
              "end": {
                "line": 355,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 11166,
                "end": 11193,
                "loc": {
                  "start": {
                    "line": 350,
                    "column": 1
                  },
                  "end": {
                    "line": 350,
                    "column": 28
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 11170,
                    "end": 11176,
                    "loc": {
                      "start": {
                        "line": 350,
                        "column": 5
                      },
                      "end": {
                        "line": 350,
                        "column": 11
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 11170,
                      "end": 11176,
                      "loc": {
                        "start": {
                          "line": 350,
                          "column": 5
                        },
                        "end": {
                          "line": 350,
                          "column": 11
                        }
                      },
                      "name": "result"
                    },
                    "init": null
                  },
                  {
                    "type": "VariableDeclarator",
                    "start": 11178,
                    "end": 11192,
                    "loc": {
                      "start": {
                        "line": 350,
                        "column": 13
                      },
                      "end": {
                        "line": 350,
                        "column": 27
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 11178,
                      "end": 11185,
                      "loc": {
                        "start": {
                          "line": 350,
                          "column": 13
                        },
                        "end": {
                          "line": 350,
                          "column": 20
                        }
                      },
                      "name": "current"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 11188,
                      "end": 11192,
                      "loc": {
                        "start": {
                          "line": 350,
                          "column": 23
                        },
                        "end": {
                          "line": 350,
                          "column": 27
                        }
                      }
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "WhileStatement",
                "start": 11195,
                "end": 11323,
                "loc": {
                  "start": {
                    "line": 351,
                    "column": 1
                  },
                  "end": {
                    "line": 354,
                    "column": 2
                  }
                },
                "test": {
                  "type": "Identifier",
                  "start": 11202,
                  "end": 11209,
                  "loc": {
                    "start": {
                      "line": 351,
                      "column": 8
                    },
                    "end": {
                      "line": 351,
                      "column": 15
                    }
                  },
                  "name": "current"
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 11211,
                  "end": 11323,
                  "loc": {
                    "start": {
                      "line": 351,
                      "column": 17
                    },
                    "end": {
                      "line": 354,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 11215,
                      "end": 11292,
                      "loc": {
                        "start": {
                          "line": 352,
                          "column": 2
                        },
                        "end": {
                          "line": 352,
                          "column": 79
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 11219,
                        "end": 11275,
                        "loc": {
                          "start": {
                            "line": 352,
                            "column": 6
                          },
                          "end": {
                            "line": 352,
                            "column": 62
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 11219,
                          "end": 11234,
                          "loc": {
                            "start": {
                              "line": 352,
                              "column": 6
                            },
                            "end": {
                              "line": 352,
                              "column": 21
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "MemberExpression",
                            "start": 11220,
                            "end": 11234,
                            "loc": {
                              "start": {
                                "line": 352,
                                "column": 7
                              },
                              "end": {
                                "line": 352,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 11220,
                              "end": 11227,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 7
                                },
                                "end": {
                                  "line": 352,
                                  "column": 14
                                }
                              },
                              "name": "current"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11228,
                              "end": 11234,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 15
                                },
                                "end": {
                                  "line": 352,
                                  "column": 21
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 11238,
                          "end": 11275,
                          "loc": {
                            "start": {
                              "line": 352,
                              "column": 25
                            },
                            "end": {
                              "line": 352,
                              "column": 62
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 11238,
                            "end": 11252,
                            "loc": {
                              "start": {
                                "line": 352,
                                "column": 25
                              },
                              "end": {
                                "line": 352,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 11238,
                              "end": 11245,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 25
                                },
                                "end": {
                                  "line": 352,
                                  "column": 32
                                }
                              },
                              "name": "current"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11246,
                              "end": 11252,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 33
                                },
                                "end": {
                                  "line": 352,
                                  "column": 39
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          },
                          "operator": "instanceof",
                          "right": {
                            "type": "MemberExpression",
                            "start": 11264,
                            "end": 11275,
                            "loc": {
                              "start": {
                                "line": 352,
                                "column": 51
                              },
                              "end": {
                                "line": 352,
                                "column": 62
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 11264,
                              "end": 11269,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 51
                                },
                                "end": {
                                  "line": 352,
                                  "column": 56
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11270,
                              "end": 11275,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 57
                                },
                                "end": {
                                  "line": 352,
                                  "column": 62
                                }
                              },
                              "name": "Scene"
                            },
                            "computed": false
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 11277,
                        "end": 11292,
                        "loc": {
                          "start": {
                            "line": 352,
                            "column": 64
                          },
                          "end": {
                            "line": 352,
                            "column": 79
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 11284,
                          "end": 11291,
                          "loc": {
                            "start": {
                              "line": 352,
                              "column": 71
                            },
                            "end": {
                              "line": 352,
                              "column": 78
                            }
                          },
                          "name": "current"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11295,
                      "end": 11320,
                      "loc": {
                        "start": {
                          "line": 353,
                          "column": 2
                        },
                        "end": {
                          "line": 353,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11295,
                        "end": 11319,
                        "loc": {
                          "start": {
                            "line": 353,
                            "column": 2
                          },
                          "end": {
                            "line": 353,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 11295,
                          "end": 11302,
                          "loc": {
                            "start": {
                              "line": 353,
                              "column": 2
                            },
                            "end": {
                              "line": 353,
                              "column": 9
                            }
                          },
                          "name": "current"
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 11305,
                          "end": 11319,
                          "loc": {
                            "start": {
                              "line": 353,
                              "column": 12
                            },
                            "end": {
                              "line": 353,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11305,
                            "end": 11312,
                            "loc": {
                              "start": {
                                "line": 353,
                                "column": 12
                              },
                              "end": {
                                "line": 353,
                                "column": 19
                              }
                            },
                            "name": "current"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11313,
                            "end": 11319,
                            "loc": {
                              "start": {
                                "line": 353,
                                "column": 20
                              },
                              "end": {
                                "line": 353,
                                "column": 26
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        }
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11327,
      "end": 11430,
      "loc": {
        "start": {
          "line": 357,
          "column": 0
        },
        "end": {
          "line": 359,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11327,
        "end": 11430,
        "loc": {
          "start": {
            "line": 357,
            "column": 0
          },
          "end": {
            "line": 359,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11327,
          "end": 11356,
          "loc": {
            "start": {
              "line": 357,
              "column": 0
            },
            "end": {
              "line": 357,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11327,
            "end": 11351,
            "loc": {
              "start": {
                "line": 357,
                "column": 0
              },
              "end": {
                "line": 357,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11327,
              "end": 11341,
              "loc": {
                "start": {
                  "line": 357,
                  "column": 0
                },
                "end": {
                  "line": 357,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11327,
                "end": 11332,
                "loc": {
                  "start": {
                    "line": 357,
                    "column": 0
                  },
                  "end": {
                    "line": 357,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11333,
                "end": 11341,
                "loc": {
                  "start": {
                    "line": 357,
                    "column": 6
                  },
                  "end": {
                    "line": 357,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11342,
              "end": 11351,
              "loc": {
                "start": {
                  "line": 357,
                  "column": 15
                },
                "end": {
                  "line": 357,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11352,
            "end": 11356,
            "loc": {
              "start": {
                "line": 357,
                "column": 25
              },
              "end": {
                "line": 357,
                "column": 29
              }
            },
            "name": "pwtl"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11359,
          "end": 11430,
          "loc": {
            "start": {
              "line": 357,
              "column": 32
            },
            "end": {
              "line": 359,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11352,
            "end": 11356,
            "loc": {
              "start": {
                "line": 357,
                "column": 25
              },
              "end": {
                "line": 357,
                "column": 29
              }
            },
            "name": "pwtl"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11368,
              "end": 11373,
              "loc": {
                "start": {
                  "line": 357,
                  "column": 41
                },
                "end": {
                  "line": 357,
                  "column": 46
                }
              },
              "name": "point"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11375,
            "end": 11430,
            "loc": {
              "start": {
                "line": 357,
                "column": 48
              },
              "end": {
                "line": 359,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 11381,
                "end": 11428,
                "loc": {
                  "start": {
                    "line": 358,
                    "column": 4
                  },
                  "end": {
                    "line": 358,
                    "column": 51
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 11388,
                  "end": 11427,
                  "loc": {
                    "start": {
                      "line": 358,
                      "column": 11
                    },
                    "end": {
                      "line": 358,
                      "column": 50
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 11388,
                    "end": 11412,
                    "loc": {
                      "start": {
                        "line": 358,
                        "column": 11
                      },
                      "end": {
                        "line": 358,
                        "column": 35
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 11388,
                      "end": 11399,
                      "loc": {
                        "start": {
                          "line": 358,
                          "column": 11
                        },
                        "end": {
                          "line": 358,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 11388,
                        "end": 11392,
                        "loc": {
                          "start": {
                            "line": 358,
                            "column": 11
                          },
                          "end": {
                            "line": 358,
                            "column": 15
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11393,
                        "end": 11399,
                        "loc": {
                          "start": {
                            "line": 358,
                            "column": 16
                          },
                          "end": {
                            "line": 358,
                            "column": 22
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11400,
                      "end": 11412,
                      "loc": {
                        "start": {
                          "line": 358,
                          "column": 23
                        },
                        "end": {
                          "line": 358,
                          "column": 35
                        }
                      },
                      "name": "worldToLocal"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "CallExpression",
                      "start": 11413,
                      "end": 11426,
                      "loc": {
                        "start": {
                          "line": 358,
                          "column": 36
                        },
                        "end": {
                          "line": 358,
                          "column": 49
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11413,
                        "end": 11424,
                        "loc": {
                          "start": {
                            "line": 358,
                            "column": 36
                          },
                          "end": {
                            "line": 358,
                            "column": 47
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 11413,
                          "end": 11418,
                          "loc": {
                            "start": {
                              "line": 358,
                              "column": 36
                            },
                            "end": {
                              "line": 358,
                              "column": 41
                            }
                          },
                          "name": "point"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11419,
                          "end": 11424,
                          "loc": {
                            "start": {
                              "line": 358,
                              "column": 42
                            },
                            "end": {
                              "line": 358,
                              "column": 47
                            }
                          },
                          "name": "clone"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11432,
      "end": 11535,
      "loc": {
        "start": {
          "line": 361,
          "column": 0
        },
        "end": {
          "line": 363,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11432,
        "end": 11535,
        "loc": {
          "start": {
            "line": 361,
            "column": 0
          },
          "end": {
            "line": 363,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11432,
          "end": 11461,
          "loc": {
            "start": {
              "line": 361,
              "column": 0
            },
            "end": {
              "line": 361,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11432,
            "end": 11456,
            "loc": {
              "start": {
                "line": 361,
                "column": 0
              },
              "end": {
                "line": 361,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11432,
              "end": 11446,
              "loc": {
                "start": {
                  "line": 361,
                  "column": 0
                },
                "end": {
                  "line": 361,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11432,
                "end": 11437,
                "loc": {
                  "start": {
                    "line": 361,
                    "column": 0
                  },
                  "end": {
                    "line": 361,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11438,
                "end": 11446,
                "loc": {
                  "start": {
                    "line": 361,
                    "column": 6
                  },
                  "end": {
                    "line": 361,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11447,
              "end": 11456,
              "loc": {
                "start": {
                  "line": 361,
                  "column": 15
                },
                "end": {
                  "line": 361,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11457,
            "end": 11461,
            "loc": {
              "start": {
                "line": 361,
                "column": 25
              },
              "end": {
                "line": 361,
                "column": 29
              }
            },
            "name": "pltw"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11464,
          "end": 11535,
          "loc": {
            "start": {
              "line": 361,
              "column": 32
            },
            "end": {
              "line": 363,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11457,
            "end": 11461,
            "loc": {
              "start": {
                "line": 361,
                "column": 25
              },
              "end": {
                "line": 361,
                "column": 29
              }
            },
            "name": "pltw"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11473,
              "end": 11478,
              "loc": {
                "start": {
                  "line": 361,
                  "column": 41
                },
                "end": {
                  "line": 361,
                  "column": 46
                }
              },
              "name": "point"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11480,
            "end": 11535,
            "loc": {
              "start": {
                "line": 361,
                "column": 48
              },
              "end": {
                "line": 363,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 11486,
                "end": 11533,
                "loc": {
                  "start": {
                    "line": 362,
                    "column": 4
                  },
                  "end": {
                    "line": 362,
                    "column": 51
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 11493,
                  "end": 11532,
                  "loc": {
                    "start": {
                      "line": 362,
                      "column": 11
                    },
                    "end": {
                      "line": 362,
                      "column": 50
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 11493,
                    "end": 11517,
                    "loc": {
                      "start": {
                        "line": 362,
                        "column": 11
                      },
                      "end": {
                        "line": 362,
                        "column": 35
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 11493,
                      "end": 11504,
                      "loc": {
                        "start": {
                          "line": 362,
                          "column": 11
                        },
                        "end": {
                          "line": 362,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 11493,
                        "end": 11497,
                        "loc": {
                          "start": {
                            "line": 362,
                            "column": 11
                          },
                          "end": {
                            "line": 362,
                            "column": 15
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11498,
                        "end": 11504,
                        "loc": {
                          "start": {
                            "line": 362,
                            "column": 16
                          },
                          "end": {
                            "line": 362,
                            "column": 22
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11505,
                      "end": 11517,
                      "loc": {
                        "start": {
                          "line": 362,
                          "column": 23
                        },
                        "end": {
                          "line": 362,
                          "column": 35
                        }
                      },
                      "name": "localToWorld"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "CallExpression",
                      "start": 11518,
                      "end": 11531,
                      "loc": {
                        "start": {
                          "line": 362,
                          "column": 36
                        },
                        "end": {
                          "line": 362,
                          "column": 49
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11518,
                        "end": 11529,
                        "loc": {
                          "start": {
                            "line": 362,
                            "column": 36
                          },
                          "end": {
                            "line": 362,
                            "column": 47
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 11518,
                          "end": 11523,
                          "loc": {
                            "start": {
                              "line": 362,
                              "column": 36
                            },
                            "end": {
                              "line": 362,
                              "column": 41
                            }
                          },
                          "name": "point"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11524,
                          "end": 11529,
                          "loc": {
                            "start": {
                              "line": 362,
                              "column": 42
                            },
                            "end": {
                              "line": 362,
                              "column": 47
                            }
                          },
                          "name": "clone"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11537,
      "end": 11718,
      "loc": {
        "start": {
          "line": 365,
          "column": 0
        },
        "end": {
          "line": 372,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11537,
        "end": 11718,
        "loc": {
          "start": {
            "line": 365,
            "column": 0
          },
          "end": {
            "line": 372,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11537,
          "end": 11571,
          "loc": {
            "start": {
              "line": 365,
              "column": 0
            },
            "end": {
              "line": 365,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11537,
            "end": 11561,
            "loc": {
              "start": {
                "line": 365,
                "column": 0
              },
              "end": {
                "line": 365,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11537,
              "end": 11551,
              "loc": {
                "start": {
                  "line": 365,
                  "column": 0
                },
                "end": {
                  "line": 365,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11537,
                "end": 11542,
                "loc": {
                  "start": {
                    "line": 365,
                    "column": 0
                  },
                  "end": {
                    "line": 365,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11543,
                "end": 11551,
                "loc": {
                  "start": {
                    "line": 365,
                    "column": 6
                  },
                  "end": {
                    "line": 365,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11552,
              "end": 11561,
              "loc": {
                "start": {
                  "line": 365,
                  "column": 15
                },
                "end": {
                  "line": 365,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11562,
            "end": 11571,
            "loc": {
              "start": {
                "line": 365,
                "column": 25
              },
              "end": {
                "line": 365,
                "column": 34
              }
            },
            "name": "isChildOf"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11574,
          "end": 11718,
          "loc": {
            "start": {
              "line": 365,
              "column": 37
            },
            "end": {
              "line": 372,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11562,
            "end": 11571,
            "loc": {
              "start": {
                "line": 365,
                "column": 25
              },
              "end": {
                "line": 365,
                "column": 34
              }
            },
            "name": "isChildOf"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 11583,
              "end": 11589,
              "loc": {
                "start": {
                  "line": 365,
                  "column": 46
                },
                "end": {
                  "line": 365,
                  "column": 52
                }
              },
              "name": "parent"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 11591,
            "end": 11718,
            "loc": {
              "start": {
                "line": 365,
                "column": 54
              },
              "end": {
                "line": 372,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 11594,
                "end": 11613,
                "loc": {
                  "start": {
                    "line": 366,
                    "column": 1
                  },
                  "end": {
                    "line": 366,
                    "column": 20
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 11598,
                    "end": 11612,
                    "loc": {
                      "start": {
                        "line": 366,
                        "column": 5
                      },
                      "end": {
                        "line": 366,
                        "column": 19
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 11598,
                      "end": 11605,
                      "loc": {
                        "start": {
                          "line": 366,
                          "column": 5
                        },
                        "end": {
                          "line": 366,
                          "column": 12
                        }
                      },
                      "name": "current"
                    },
                    "init": {
                      "type": "ThisExpression",
                      "start": 11608,
                      "end": 11612,
                      "loc": {
                        "start": {
                          "line": 366,
                          "column": 15
                        },
                        "end": {
                          "line": 366,
                          "column": 19
                        }
                      }
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "WhileStatement",
                "start": 11615,
                "end": 11701,
                "loc": {
                  "start": {
                    "line": 367,
                    "column": 1
                  },
                  "end": {
                    "line": 370,
                    "column": 2
                  }
                },
                "test": {
                  "type": "Identifier",
                  "start": 11622,
                  "end": 11629,
                  "loc": {
                    "start": {
                      "line": 367,
                      "column": 8
                    },
                    "end": {
                      "line": 367,
                      "column": 15
                    }
                  },
                  "name": "current"
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 11631,
                  "end": 11701,
                  "loc": {
                    "start": {
                      "line": 367,
                      "column": 17
                    },
                    "end": {
                      "line": 370,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 11635,
                      "end": 11670,
                      "loc": {
                        "start": {
                          "line": 368,
                          "column": 2
                        },
                        "end": {
                          "line": 368,
                          "column": 37
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 11639,
                        "end": 11656,
                        "loc": {
                          "start": {
                            "line": 368,
                            "column": 6
                          },
                          "end": {
                            "line": 368,
                            "column": 23
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 11639,
                          "end": 11646,
                          "loc": {
                            "start": {
                              "line": 368,
                              "column": 6
                            },
                            "end": {
                              "line": 368,
                              "column": 13
                            }
                          },
                          "name": "current"
                        },
                        "operator": "==",
                        "right": {
                          "type": "Identifier",
                          "start": 11650,
                          "end": 11656,
                          "loc": {
                            "start": {
                              "line": 368,
                              "column": 17
                            },
                            "end": {
                              "line": 368,
                              "column": 23
                            }
                          },
                          "name": "parent"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 11658,
                        "end": 11670,
                        "loc": {
                          "start": {
                            "line": 368,
                            "column": 25
                          },
                          "end": {
                            "line": 368,
                            "column": 37
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 11665,
                          "end": 11669,
                          "loc": {
                            "start": {
                              "line": 368,
                              "column": 32
                            },
                            "end": {
                              "line": 368,
                              "column": 36
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11673,
                      "end": 11698,
                      "loc": {
                        "start": {
                          "line": 369,
                          "column": 2
                        },
                        "end": {
                          "line": 369,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11673,
                        "end": 11697,
                        "loc": {
                          "start": {
                            "line": 369,
                            "column": 2
                          },
                          "end": {
                            "line": 369,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 11673,
                          "end": 11680,
                          "loc": {
                            "start": {
                              "line": 369,
                              "column": 2
                            },
                            "end": {
                              "line": 369,
                              "column": 9
                            }
                          },
                          "name": "current"
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 11683,
                          "end": 11697,
                          "loc": {
                            "start": {
                              "line": 369,
                              "column": 12
                            },
                            "end": {
                              "line": 369,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11683,
                            "end": 11690,
                            "loc": {
                              "start": {
                                "line": 369,
                                "column": 12
                              },
                              "end": {
                                "line": 369,
                                "column": 19
                              }
                            },
                            "name": "current"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11691,
                            "end": 11697,
                            "loc": {
                              "start": {
                                "line": 369,
                                "column": 20
                              },
                              "end": {
                                "line": 369,
                                "column": 26
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        }
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 11703,
                "end": 11716,
                "loc": {
                  "start": {
                    "line": 371,
                    "column": 1
                  },
                  "end": {
                    "line": 371,
                    "column": 14
                  }
                },
                "argument": {
                  "type": "Literal",
                  "start": 11710,
                  "end": 11715,
                  "loc": {
                    "start": {
                      "line": 371,
                      "column": 8
                    },
                    "end": {
                      "line": 371,
                      "column": 13
                    }
                  },
                  "value": false,
                  "rawValue": false,
                  "raw": "false"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 11720,
      "end": 12029,
      "loc": {
        "start": {
          "line": 374,
          "column": 0
        },
        "end": {
          "line": 382,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 11720,
        "end": 12029,
        "loc": {
          "start": {
            "line": 374,
            "column": 0
          },
          "end": {
            "line": 382,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 11720,
          "end": 11754,
          "loc": {
            "start": {
              "line": 374,
              "column": 0
            },
            "end": {
              "line": 374,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 11720,
            "end": 11744,
            "loc": {
              "start": {
                "line": 374,
                "column": 0
              },
              "end": {
                "line": 374,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 11720,
              "end": 11734,
              "loc": {
                "start": {
                  "line": 374,
                  "column": 0
                },
                "end": {
                  "line": 374,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 11720,
                "end": 11725,
                "loc": {
                  "start": {
                    "line": 374,
                    "column": 0
                  },
                  "end": {
                    "line": 374,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 11726,
                "end": 11734,
                "loc": {
                  "start": {
                    "line": 374,
                    "column": 6
                  },
                  "end": {
                    "line": 374,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 11735,
              "end": 11744,
              "loc": {
                "start": {
                  "line": 374,
                  "column": 15
                },
                "end": {
                  "line": 374,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 11745,
            "end": 11754,
            "loc": {
              "start": {
                "line": 374,
                "column": 25
              },
              "end": {
                "line": 374,
                "column": 34
              }
            },
            "name": "isVisible"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 11757,
          "end": 12029,
          "loc": {
            "start": {
              "line": 374,
              "column": 37
            },
            "end": {
              "line": 382,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 11745,
            "end": 11754,
            "loc": {
              "start": {
                "line": 374,
                "column": 25
              },
              "end": {
                "line": 374,
                "column": 34
              }
            },
            "name": "isVisible"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 11768,
            "end": 12029,
            "loc": {
              "start": {
                "line": 374,
                "column": 48
              },
              "end": {
                "line": 382,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 11771,
                "end": 11867,
                "loc": {
                  "start": {
                    "line": 375,
                    "column": 1
                  },
                  "end": {
                    "line": 376,
                    "column": 75
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 11775,
                  "end": 11852,
                  "loc": {
                    "start": {
                      "line": 375,
                      "column": 5
                    },
                    "end": {
                      "line": 376,
                      "column": 60
                    }
                  },
                  "left": {
                    "type": "UnaryExpression",
                    "start": 11775,
                    "end": 11788,
                    "loc": {
                      "start": {
                        "line": 375,
                        "column": 5
                      },
                      "end": {
                        "line": 375,
                        "column": 18
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 11776,
                      "end": 11788,
                      "loc": {
                        "start": {
                          "line": 375,
                          "column": 6
                        },
                        "end": {
                          "line": 375,
                          "column": 18
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 11776,
                        "end": 11780,
                        "loc": {
                          "start": {
                            "line": 375,
                            "column": 6
                          },
                          "end": {
                            "line": 375,
                            "column": 10
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11781,
                        "end": 11788,
                        "loc": {
                          "start": {
                            "line": 375,
                            "column": 11
                          },
                          "end": {
                            "line": 375,
                            "column": 18
                          }
                        },
                        "name": "visible"
                      },
                      "computed": false
                    }
                  },
                  "operator": "||",
                  "right": {
                    "type": "LogicalExpression",
                    "start": 11795,
                    "end": 11851,
                    "loc": {
                      "start": {
                        "line": 376,
                        "column": 3
                      },
                      "end": {
                        "line": 376,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "BinaryExpression",
                      "start": 11795,
                      "end": 11821,
                      "loc": {
                        "start": {
                          "line": 376,
                          "column": 3
                        },
                        "end": {
                          "line": 376,
                          "column": 29
                        }
                      },
                      "left": {
                        "type": "ThisExpression",
                        "start": 11795,
                        "end": 11799,
                        "loc": {
                          "start": {
                            "line": 376,
                            "column": 3
                          },
                          "end": {
                            "line": 376,
                            "column": 7
                          }
                        }
                      },
                      "operator": "instanceof",
                      "right": {
                        "type": "MemberExpression",
                        "start": 11811,
                        "end": 11821,
                        "loc": {
                          "start": {
                            "line": 376,
                            "column": 19
                          },
                          "end": {
                            "line": 376,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 11811,
                          "end": 11816,
                          "loc": {
                            "start": {
                              "line": 376,
                              "column": 19
                            },
                            "end": {
                              "line": 376,
                              "column": 24
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11817,
                          "end": 11821,
                          "loc": {
                            "start": {
                              "line": 376,
                              "column": 25
                            },
                            "end": {
                              "line": 376,
                              "column": 29
                            }
                          },
                          "name": "Mesh"
                        },
                        "computed": false
                      }
                    },
                    "operator": "&&",
                    "right": {
                      "type": "BinaryExpression",
                      "start": 11825,
                      "end": 11851,
                      "loc": {
                        "start": {
                          "line": 376,
                          "column": 33
                        },
                        "end": {
                          "line": 376,
                          "column": 59
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 11825,
                        "end": 11846,
                        "loc": {
                          "start": {
                            "line": 376,
                            "column": 33
                          },
                          "end": {
                            "line": 376,
                            "column": 54
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 11825,
                          "end": 11838,
                          "loc": {
                            "start": {
                              "line": 376,
                              "column": 33
                            },
                            "end": {
                              "line": 376,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11825,
                            "end": 11829,
                            "loc": {
                              "start": {
                                "line": 376,
                                "column": 33
                              },
                              "end": {
                                "line": 376,
                                "column": 37
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11830,
                            "end": 11838,
                            "loc": {
                              "start": {
                                "line": 376,
                                "column": 38
                              },
                              "end": {
                                "line": 376,
                                "column": 46
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11839,
                          "end": 11846,
                          "loc": {
                            "start": {
                              "line": 376,
                              "column": 47
                            },
                            "end": {
                              "line": 376,
                              "column": 54
                            }
                          },
                          "name": "opacity"
                        },
                        "computed": false
                      },
                      "operator": "==",
                      "right": {
                        "type": "Literal",
                        "start": 11850,
                        "end": 11851,
                        "loc": {
                          "start": {
                            "line": 376,
                            "column": 58
                          },
                          "end": {
                            "line": 376,
                            "column": 59
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    },
                    "parenthesizedExpression": true
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 11854,
                  "end": 11867,
                  "loc": {
                    "start": {
                      "line": 376,
                      "column": 62
                    },
                    "end": {
                      "line": 376,
                      "column": 75
                    }
                  },
                  "argument": {
                    "type": "Literal",
                    "start": 11861,
                    "end": 11866,
                    "loc": {
                      "start": {
                        "line": 376,
                        "column": 69
                      },
                      "end": {
                        "line": 376,
                        "column": 74
                      }
                    },
                    "value": false,
                    "rawValue": false,
                    "raw": "false"
                  }
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 11869,
                "end": 12012,
                "loc": {
                  "start": {
                    "line": 377,
                    "column": 1
                  },
                  "end": {
                    "line": 380,
                    "column": 33
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 11873,
                  "end": 11930,
                  "loc": {
                    "start": {
                      "line": 377,
                      "column": 5
                    },
                    "end": {
                      "line": 377,
                      "column": 62
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 11873,
                    "end": 11892,
                    "loc": {
                      "start": {
                        "line": 377,
                        "column": 5
                      },
                      "end": {
                        "line": 377,
                        "column": 24
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 11873,
                      "end": 11884,
                      "loc": {
                        "start": {
                          "line": 377,
                          "column": 5
                        },
                        "end": {
                          "line": 377,
                          "column": 16
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 11873,
                        "end": 11877,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 5
                          },
                          "end": {
                            "line": 377,
                            "column": 9
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11878,
                        "end": 11884,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 10
                          },
                          "end": {
                            "line": 377,
                            "column": 16
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "operator": "==",
                    "right": {
                      "type": "Literal",
                      "start": 11888,
                      "end": 11892,
                      "loc": {
                        "start": {
                          "line": 377,
                          "column": 20
                        },
                        "end": {
                          "line": 377,
                          "column": 24
                        }
                      },
                      "value": null,
                      "rawValue": null,
                      "raw": "null"
                    }
                  },
                  "operator": "||",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 11896,
                    "end": 11930,
                    "loc": {
                      "start": {
                        "line": 377,
                        "column": 28
                      },
                      "end": {
                        "line": 377,
                        "column": 62
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 11896,
                      "end": 11907,
                      "loc": {
                        "start": {
                          "line": 377,
                          "column": 28
                        },
                        "end": {
                          "line": 377,
                          "column": 39
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 11896,
                        "end": 11900,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 28
                          },
                          "end": {
                            "line": 377,
                            "column": 32
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11901,
                        "end": 11907,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 33
                          },
                          "end": {
                            "line": 377,
                            "column": 39
                          }
                        },
                        "name": "parent"
                      },
                      "computed": false
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "MemberExpression",
                      "start": 11919,
                      "end": 11930,
                      "loc": {
                        "start": {
                          "line": 377,
                          "column": 51
                        },
                        "end": {
                          "line": 377,
                          "column": 62
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 11919,
                        "end": 11924,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 51
                          },
                          "end": {
                            "line": 377,
                            "column": 56
                          }
                        },
                        "name": "THREE"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 11925,
                        "end": 11930,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 57
                          },
                          "end": {
                            "line": 377,
                            "column": 62
                          }
                        },
                        "name": "Scene"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 11934,
                  "end": 11954,
                  "loc": {
                    "start": {
                      "line": 378,
                      "column": 2
                    },
                    "end": {
                      "line": 378,
                      "column": 22
                    }
                  },
                  "argument": {
                    "type": "MemberExpression",
                    "start": 11941,
                    "end": 11953,
                    "loc": {
                      "start": {
                        "line": 378,
                        "column": 9
                      },
                      "end": {
                        "line": 378,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 11941,
                      "end": 11945,
                      "loc": {
                        "start": {
                          "line": 378,
                          "column": 9
                        },
                        "end": {
                          "line": 378,
                          "column": 13
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11946,
                      "end": 11953,
                      "loc": {
                        "start": {
                          "line": 378,
                          "column": 14
                        },
                        "end": {
                          "line": 378,
                          "column": 21
                        }
                      },
                      "name": "visible"
                    },
                    "computed": false
                  }
                },
                "alternate": {
                  "type": "IfStatement",
                  "start": 11961,
                  "end": 12012,
                  "loc": {
                    "start": {
                      "line": 379,
                      "column": 6
                    },
                    "end": {
                      "line": 380,
                      "column": 33
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 11965,
                    "end": 11977,
                    "loc": {
                      "start": {
                        "line": 379,
                        "column": 10
                      },
                      "end": {
                        "line": 379,
                        "column": 22
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 11965,
                      "end": 11969,
                      "loc": {
                        "start": {
                          "line": 379,
                          "column": 10
                        },
                        "end": {
                          "line": 379,
                          "column": 14
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 11970,
                      "end": 11977,
                      "loc": {
                        "start": {
                          "line": 379,
                          "column": 15
                        },
                        "end": {
                          "line": 379,
                          "column": 22
                        }
                      },
                      "name": "visible"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "ReturnStatement",
                    "start": 11981,
                    "end": 12012,
                    "loc": {
                      "start": {
                        "line": 380,
                        "column": 2
                      },
                      "end": {
                        "line": 380,
                        "column": 33
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 11988,
                      "end": 12011,
                      "loc": {
                        "start": {
                          "line": 380,
                          "column": 9
                        },
                        "end": {
                          "line": 380,
                          "column": 32
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11988,
                        "end": 12009,
                        "loc": {
                          "start": {
                            "line": 380,
                            "column": 9
                          },
                          "end": {
                            "line": 380,
                            "column": 30
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 11988,
                          "end": 11999,
                          "loc": {
                            "start": {
                              "line": 380,
                              "column": 9
                            },
                            "end": {
                              "line": 380,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11988,
                            "end": 11992,
                            "loc": {
                              "start": {
                                "line": 380,
                                "column": 9
                              },
                              "end": {
                                "line": 380,
                                "column": 13
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11993,
                            "end": 11999,
                            "loc": {
                              "start": {
                                "line": 380,
                                "column": 14
                              },
                              "end": {
                                "line": 380,
                                "column": 20
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12000,
                          "end": 12009,
                          "loc": {
                            "start": {
                              "line": 380,
                              "column": 21
                            },
                            "end": {
                              "line": 380,
                              "column": 30
                            }
                          },
                          "name": "isVisible"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  },
                  "alternate": null
                }
              },
              {
                "type": "ReturnStatement",
                "start": 12014,
                "end": 12027,
                "loc": {
                  "start": {
                    "line": 381,
                    "column": 1
                  },
                  "end": {
                    "line": 381,
                    "column": 14
                  }
                },
                "argument": {
                  "type": "Literal",
                  "start": 12021,
                  "end": 12026,
                  "loc": {
                    "start": {
                      "line": 381,
                      "column": 8
                    },
                    "end": {
                      "line": 381,
                      "column": 13
                    }
                  },
                  "value": false,
                  "rawValue": false,
                  "raw": "false"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12031,
      "end": 12250,
      "loc": {
        "start": {
          "line": 384,
          "column": 0
        },
        "end": {
          "line": 392,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12031,
        "end": 12250,
        "loc": {
          "start": {
            "line": 384,
            "column": 0
          },
          "end": {
            "line": 392,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12031,
          "end": 12060,
          "loc": {
            "start": {
              "line": 384,
              "column": 0
            },
            "end": {
              "line": 384,
              "column": 29
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12031,
            "end": 12055,
            "loc": {
              "start": {
                "line": 384,
                "column": 0
              },
              "end": {
                "line": 384,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12031,
              "end": 12045,
              "loc": {
                "start": {
                  "line": 384,
                  "column": 0
                },
                "end": {
                  "line": 384,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12031,
                "end": 12036,
                "loc": {
                  "start": {
                    "line": 384,
                    "column": 0
                  },
                  "end": {
                    "line": 384,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12037,
                "end": 12045,
                "loc": {
                  "start": {
                    "line": 384,
                    "column": 6
                  },
                  "end": {
                    "line": 384,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12046,
              "end": 12055,
              "loc": {
                "start": {
                  "line": 384,
                  "column": 15
                },
                "end": {
                  "line": 384,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12056,
            "end": 12060,
            "loc": {
              "start": {
                "line": 384,
                "column": 25
              },
              "end": {
                "line": 384,
                "column": 29
              }
            },
            "name": "find"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12063,
          "end": 12250,
          "loc": {
            "start": {
              "line": 384,
              "column": 32
            },
            "end": {
              "line": 392,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12056,
            "end": 12060,
            "loc": {
              "start": {
                "line": 384,
                "column": 25
              },
              "end": {
                "line": 384,
                "column": 29
              }
            },
            "name": "find"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12072,
              "end": 12081,
              "loc": {
                "start": {
                  "line": 384,
                  "column": 41
                },
                "end": {
                  "line": 384,
                  "column": 50
                }
              },
              "name": "condition"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12083,
            "end": 12250,
            "loc": {
              "start": {
                "line": 384,
                "column": 52
              },
              "end": {
                "line": 392,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 12086,
                "end": 12127,
                "loc": {
                  "start": {
                    "line": 385,
                    "column": 1
                  },
                  "end": {
                    "line": 386,
                    "column": 20
                  }
                },
                "test": {
                  "type": "CallExpression",
                  "start": 12090,
                  "end": 12105,
                  "loc": {
                    "start": {
                      "line": 385,
                      "column": 5
                    },
                    "end": {
                      "line": 385,
                      "column": 20
                    }
                  },
                  "callee": {
                    "type": "Identifier",
                    "start": 12090,
                    "end": 12099,
                    "loc": {
                      "start": {
                        "line": 385,
                        "column": 5
                      },
                      "end": {
                        "line": 385,
                        "column": 14
                      }
                    },
                    "name": "condition"
                  },
                  "arguments": [
                    {
                      "type": "ThisExpression",
                      "start": 12100,
                      "end": 12104,
                      "loc": {
                        "start": {
                          "line": 385,
                          "column": 15
                        },
                        "end": {
                          "line": 385,
                          "column": 19
                        }
                      }
                    }
                  ]
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 12115,
                  "end": 12127,
                  "loc": {
                    "start": {
                      "line": 386,
                      "column": 8
                    },
                    "end": {
                      "line": 386,
                      "column": 20
                    }
                  },
                  "argument": {
                    "type": "ThisExpression",
                    "start": 12122,
                    "end": 12126,
                    "loc": {
                      "start": {
                        "line": 386,
                        "column": 15
                      },
                      "end": {
                        "line": 386,
                        "column": 19
                      }
                    }
                  }
                },
                "alternate": null
              },
              {
                "type": "ForOfStatement",
                "start": 12129,
                "end": 12248,
                "loc": {
                  "start": {
                    "line": 387,
                    "column": 1
                  },
                  "end": {
                    "line": 391,
                    "column": 5
                  }
                },
                "left": {
                  "type": "VariableDeclaration",
                  "start": 12134,
                  "end": 12143,
                  "loc": {
                    "start": {
                      "line": 387,
                      "column": 6
                    },
                    "end": {
                      "line": 387,
                      "column": 15
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 12138,
                      "end": 12143,
                      "loc": {
                        "start": {
                          "line": 387,
                          "column": 10
                        },
                        "end": {
                          "line": 387,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12138,
                        "end": 12143,
                        "loc": {
                          "start": {
                            "line": 387,
                            "column": 10
                          },
                          "end": {
                            "line": 387,
                            "column": 15
                          }
                        },
                        "name": "child"
                      },
                      "init": null
                    }
                  ],
                  "kind": "let"
                },
                "right": {
                  "type": "MemberExpression",
                  "start": 12147,
                  "end": 12160,
                  "loc": {
                    "start": {
                      "line": 387,
                      "column": 19
                    },
                    "end": {
                      "line": 387,
                      "column": 32
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 12147,
                    "end": 12151,
                    "loc": {
                      "start": {
                        "line": 387,
                        "column": 19
                      },
                      "end": {
                        "line": 387,
                        "column": 23
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 12152,
                    "end": 12160,
                    "loc": {
                      "start": {
                        "line": 387,
                        "column": 24
                      },
                      "end": {
                        "line": 387,
                        "column": 32
                      }
                    },
                    "name": "children"
                  },
                  "computed": false
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 12162,
                  "end": 12248,
                  "loc": {
                    "start": {
                      "line": 387,
                      "column": 34
                    },
                    "end": {
                      "line": 391,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 12172,
                      "end": 12205,
                      "loc": {
                        "start": {
                          "line": 388,
                          "column": 8
                        },
                        "end": {
                          "line": 388,
                          "column": 41
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12176,
                          "end": 12204,
                          "loc": {
                            "start": {
                              "line": 388,
                              "column": 12
                            },
                            "end": {
                              "line": 388,
                              "column": 40
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12176,
                            "end": 12180,
                            "loc": {
                              "start": {
                                "line": 388,
                                "column": 12
                              },
                              "end": {
                                "line": 388,
                                "column": 16
                              }
                            },
                            "name": "test"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 12183,
                            "end": 12204,
                            "loc": {
                              "start": {
                                "line": 388,
                                "column": 19
                              },
                              "end": {
                                "line": 388,
                                "column": 40
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12183,
                              "end": 12193,
                              "loc": {
                                "start": {
                                  "line": 388,
                                  "column": 19
                                },
                                "end": {
                                  "line": 388,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12183,
                                "end": 12188,
                                "loc": {
                                  "start": {
                                    "line": 388,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 388,
                                    "column": 24
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12189,
                                "end": 12193,
                                "loc": {
                                  "start": {
                                    "line": 388,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 388,
                                    "column": 29
                                  }
                                },
                                "name": "find"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 12194,
                                "end": 12203,
                                "loc": {
                                  "start": {
                                    "line": 388,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 388,
                                    "column": 39
                                  }
                                },
                                "name": "condition"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 12208,
                      "end": 12242,
                      "loc": {
                        "start": {
                          "line": 389,
                          "column": 2
                        },
                        "end": {
                          "line": 390,
                          "column": 24
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 12212,
                        "end": 12216,
                        "loc": {
                          "start": {
                            "line": 389,
                            "column": 6
                          },
                          "end": {
                            "line": 389,
                            "column": 10
                          }
                        },
                        "name": "test"
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 12230,
                        "end": 12242,
                        "loc": {
                          "start": {
                            "line": 390,
                            "column": 12
                          },
                          "end": {
                            "line": 390,
                            "column": 24
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 12237,
                          "end": 12241,
                          "loc": {
                            "start": {
                              "line": 390,
                              "column": 19
                            },
                            "end": {
                              "line": 390,
                              "column": 23
                            }
                          },
                          "name": "test"
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12252,
      "end": 12479,
      "loc": {
        "start": {
          "line": 394,
          "column": 0
        },
        "end": {
          "line": 401,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12252,
        "end": 12479,
        "loc": {
          "start": {
            "line": 394,
            "column": 0
          },
          "end": {
            "line": 401,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12252,
          "end": 12293,
          "loc": {
            "start": {
              "line": 394,
              "column": 0
            },
            "end": {
              "line": 394,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12252,
            "end": 12276,
            "loc": {
              "start": {
                "line": 394,
                "column": 0
              },
              "end": {
                "line": 394,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12252,
              "end": 12266,
              "loc": {
                "start": {
                  "line": 394,
                  "column": 0
                },
                "end": {
                  "line": 394,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12252,
                "end": 12257,
                "loc": {
                  "start": {
                    "line": 394,
                    "column": 0
                  },
                  "end": {
                    "line": 394,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12258,
                "end": 12266,
                "loc": {
                  "start": {
                    "line": 394,
                    "column": 6
                  },
                  "end": {
                    "line": 394,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12267,
              "end": 12276,
              "loc": {
                "start": {
                  "line": 394,
                  "column": 15
                },
                "end": {
                  "line": 394,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12277,
            "end": 12293,
            "loc": {
              "start": {
                "line": 394,
                "column": 25
              },
              "end": {
                "line": 394,
                "column": 41
              }
            },
            "name": "getObjectByMatch"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12296,
          "end": 12479,
          "loc": {
            "start": {
              "line": 394,
              "column": 44
            },
            "end": {
              "line": 401,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12277,
            "end": 12293,
            "loc": {
              "start": {
                "line": 394,
                "column": 25
              },
              "end": {
                "line": 394,
                "column": 41
              }
            },
            "name": "getObjectByMatch"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12305,
              "end": 12309,
              "loc": {
                "start": {
                  "line": 394,
                  "column": 53
                },
                "end": {
                  "line": 394,
                  "column": 57
                }
              },
              "name": "name"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12311,
            "end": 12479,
            "loc": {
              "start": {
                "line": 394,
                "column": 59
              },
              "end": {
                "line": 401,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ForStatement",
                "start": 12314,
                "end": 12458,
                "loc": {
                  "start": {
                    "line": 395,
                    "column": 1
                  },
                  "end": {
                    "line": 399,
                    "column": 2
                  }
                },
                "init": {
                  "type": "VariableDeclaration",
                  "start": 12319,
                  "end": 12354,
                  "loc": {
                    "start": {
                      "line": 395,
                      "column": 6
                    },
                    "end": {
                      "line": 395,
                      "column": 41
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 12323,
                      "end": 12328,
                      "loc": {
                        "start": {
                          "line": 395,
                          "column": 10
                        },
                        "end": {
                          "line": 395,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12323,
                        "end": 12324,
                        "loc": {
                          "start": {
                            "line": 395,
                            "column": 10
                          },
                          "end": {
                            "line": 395,
                            "column": 11
                          }
                        },
                        "name": "i"
                      },
                      "init": {
                        "type": "Literal",
                        "start": 12327,
                        "end": 12328,
                        "loc": {
                          "start": {
                            "line": 395,
                            "column": 14
                          },
                          "end": {
                            "line": 395,
                            "column": 15
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    },
                    {
                      "type": "VariableDeclarator",
                      "start": 12330,
                      "end": 12354,
                      "loc": {
                        "start": {
                          "line": 395,
                          "column": 17
                        },
                        "end": {
                          "line": 395,
                          "column": 41
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12330,
                        "end": 12331,
                        "loc": {
                          "start": {
                            "line": 395,
                            "column": 17
                          },
                          "end": {
                            "line": 395,
                            "column": 18
                          }
                        },
                        "name": "l"
                      },
                      "init": {
                        "type": "MemberExpression",
                        "start": 12334,
                        "end": 12354,
                        "loc": {
                          "start": {
                            "line": 395,
                            "column": 21
                          },
                          "end": {
                            "line": 395,
                            "column": 41
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 12334,
                          "end": 12347,
                          "loc": {
                            "start": {
                              "line": 395,
                              "column": 21
                            },
                            "end": {
                              "line": 395,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12334,
                            "end": 12338,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 21
                              },
                              "end": {
                                "line": 395,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12339,
                            "end": 12347,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 26
                              },
                              "end": {
                                "line": 395,
                                "column": 34
                              }
                            },
                            "name": "children"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12348,
                          "end": 12354,
                          "loc": {
                            "start": {
                              "line": 395,
                              "column": 35
                            },
                            "end": {
                              "line": 395,
                              "column": 41
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "kind": "var"
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 12356,
                  "end": 12361,
                  "loc": {
                    "start": {
                      "line": 395,
                      "column": 43
                    },
                    "end": {
                      "line": 395,
                      "column": 48
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 12356,
                    "end": 12357,
                    "loc": {
                      "start": {
                        "line": 395,
                        "column": 43
                      },
                      "end": {
                        "line": 395,
                        "column": 44
                      }
                    },
                    "name": "i"
                  },
                  "operator": "<",
                  "right": {
                    "type": "Identifier",
                    "start": 12360,
                    "end": 12361,
                    "loc": {
                      "start": {
                        "line": 395,
                        "column": 47
                      },
                      "end": {
                        "line": 395,
                        "column": 48
                      }
                    },
                    "name": "l"
                  }
                },
                "update": {
                  "type": "UpdateExpression",
                  "start": 12363,
                  "end": 12366,
                  "loc": {
                    "start": {
                      "line": 395,
                      "column": 50
                    },
                    "end": {
                      "line": 395,
                      "column": 53
                    }
                  },
                  "operator": "++",
                  "prefix": false,
                  "argument": {
                    "type": "Identifier",
                    "start": 12363,
                    "end": 12364,
                    "loc": {
                      "start": {
                        "line": 395,
                        "column": 50
                      },
                      "end": {
                        "line": 395,
                        "column": 51
                      }
                    },
                    "name": "i"
                  }
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 12368,
                  "end": 12458,
                  "loc": {
                    "start": {
                      "line": 395,
                      "column": 55
                    },
                    "end": {
                      "line": 399,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 12372,
                      "end": 12401,
                      "loc": {
                        "start": {
                          "line": 396,
                          "column": 2
                        },
                        "end": {
                          "line": 396,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12376,
                          "end": 12400,
                          "loc": {
                            "start": {
                              "line": 396,
                              "column": 6
                            },
                            "end": {
                              "line": 396,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12376,
                            "end": 12381,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 6
                              },
                              "end": {
                                "line": 396,
                                "column": 11
                              }
                            },
                            "name": "child"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 12384,
                            "end": 12400,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 14
                              },
                              "end": {
                                "line": 396,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12384,
                              "end": 12397,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 14
                                },
                                "end": {
                                  "line": 396,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12384,
                                "end": 12388,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12389,
                                "end": 12397,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 27
                                  }
                                },
                                "name": "children"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12398,
                              "end": 12399,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 28
                                },
                                "end": {
                                  "line": 396,
                                  "column": 29
                                }
                              },
                              "name": "i"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 12404,
                      "end": 12455,
                      "loc": {
                        "start": {
                          "line": 397,
                          "column": 2
                        },
                        "end": {
                          "line": 398,
                          "column": 16
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 12408,
                        "end": 12437,
                        "loc": {
                          "start": {
                            "line": 397,
                            "column": 6
                          },
                          "end": {
                            "line": 397,
                            "column": 35
                          }
                        },
                        "left": {
                          "type": "CallExpression",
                          "start": 12408,
                          "end": 12432,
                          "loc": {
                            "start": {
                              "line": 397,
                              "column": 6
                            },
                            "end": {
                              "line": 397,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 12408,
                            "end": 12426,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 6
                              },
                              "end": {
                                "line": 397,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12408,
                              "end": 12418,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 6
                                },
                                "end": {
                                  "line": 397,
                                  "column": 16
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12408,
                                "end": 12413,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 11
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12414,
                                "end": 12418,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 16
                                  }
                                },
                                "name": "name"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12419,
                              "end": 12426,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 17
                                },
                                "end": {
                                  "line": 397,
                                  "column": 24
                                }
                              },
                              "name": "indexOf"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 12427,
                              "end": 12431,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 25
                                },
                                "end": {
                                  "line": 397,
                                  "column": 29
                                }
                              },
                              "name": "name"
                            }
                          ]
                        },
                        "operator": ">",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 12435,
                          "end": 12437,
                          "loc": {
                            "start": {
                              "line": 397,
                              "column": 33
                            },
                            "end": {
                              "line": 397,
                              "column": 35
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 12436,
                            "end": 12437,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 34
                              },
                              "end": {
                                "line": 397,
                                "column": 35
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 12442,
                        "end": 12455,
                        "loc": {
                          "start": {
                            "line": 398,
                            "column": 3
                          },
                          "end": {
                            "line": 398,
                            "column": 16
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 12449,
                          "end": 12454,
                          "loc": {
                            "start": {
                              "line": 398,
                              "column": 10
                            },
                            "end": {
                              "line": 398,
                              "column": 15
                            }
                          },
                          "name": "child"
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 12460,
                "end": 12477,
                "loc": {
                  "start": {
                    "line": 400,
                    "column": 1
                  },
                  "end": {
                    "line": 400,
                    "column": 18
                  }
                },
                "argument": {
                  "type": "Identifier",
                  "start": 12467,
                  "end": 12476,
                  "loc": {
                    "start": {
                      "line": 400,
                      "column": 8
                    },
                    "end": {
                      "line": 400,
                      "column": 17
                    }
                  },
                  "name": "undefined"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12481,
      "end": 12811,
      "loc": {
        "start": {
          "line": 403,
          "column": 0
        },
        "end": {
          "line": 413,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12481,
        "end": 12811,
        "loc": {
          "start": {
            "line": 403,
            "column": 0
          },
          "end": {
            "line": 413,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12481,
          "end": 12523,
          "loc": {
            "start": {
              "line": 403,
              "column": 0
            },
            "end": {
              "line": 403,
              "column": 42
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12481,
            "end": 12505,
            "loc": {
              "start": {
                "line": 403,
                "column": 0
              },
              "end": {
                "line": 403,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12481,
              "end": 12495,
              "loc": {
                "start": {
                  "line": 403,
                  "column": 0
                },
                "end": {
                  "line": 403,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12481,
                "end": 12486,
                "loc": {
                  "start": {
                    "line": 403,
                    "column": 0
                  },
                  "end": {
                    "line": 403,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12487,
                "end": 12495,
                "loc": {
                  "start": {
                    "line": 403,
                    "column": 6
                  },
                  "end": {
                    "line": 403,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12496,
              "end": 12505,
              "loc": {
                "start": {
                  "line": 403,
                  "column": 15
                },
                "end": {
                  "line": 403,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12506,
            "end": 12523,
            "loc": {
              "start": {
                "line": 403,
                "column": 25
              },
              "end": {
                "line": 403,
                "column": 42
              }
            },
            "name": "getObjectByUserId"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12526,
          "end": 12811,
          "loc": {
            "start": {
              "line": 403,
              "column": 45
            },
            "end": {
              "line": 413,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12506,
            "end": 12523,
            "loc": {
              "start": {
                "line": 403,
                "column": 25
              },
              "end": {
                "line": 403,
                "column": 42
              }
            },
            "name": "getObjectByUserId"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12535,
              "end": 12537,
              "loc": {
                "start": {
                  "line": 403,
                  "column": 54
                },
                "end": {
                  "line": 403,
                  "column": 56
                }
              },
              "name": "id"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 12539,
            "end": 12811,
            "loc": {
              "start": {
                "line": 403,
                "column": 58
              },
              "end": {
                "line": 413,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 12542,
                "end": 12602,
                "loc": {
                  "start": {
                    "line": 404,
                    "column": 1
                  },
                  "end": {
                    "line": 404,
                    "column": 61
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 12546,
                  "end": 12588,
                  "loc": {
                    "start": {
                      "line": 404,
                      "column": 5
                    },
                    "end": {
                      "line": 404,
                      "column": 47
                    }
                  },
                  "left": {
                    "type": "UnaryExpression",
                    "start": 12546,
                    "end": 12561,
                    "loc": {
                      "start": {
                        "line": 404,
                        "column": 5
                      },
                      "end": {
                        "line": 404,
                        "column": 20
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 12547,
                      "end": 12561,
                      "loc": {
                        "start": {
                          "line": 404,
                          "column": 6
                        },
                        "end": {
                          "line": 404,
                          "column": 20
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 12548,
                        "end": 12561,
                        "loc": {
                          "start": {
                            "line": 404,
                            "column": 7
                          },
                          "end": {
                            "line": 404,
                            "column": 20
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 12548,
                          "end": 12552,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 7
                            },
                            "end": {
                              "line": 404,
                              "column": 11
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12553,
                          "end": 12561,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 12
                            },
                            "end": {
                              "line": 404,
                              "column": 20
                            }
                          },
                          "name": "userData"
                        },
                        "computed": false
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 12565,
                    "end": 12588,
                    "loc": {
                      "start": {
                        "line": 404,
                        "column": 24
                      },
                      "end": {
                        "line": 404,
                        "column": 47
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 12565,
                      "end": 12581,
                      "loc": {
                        "start": {
                          "line": 404,
                          "column": 24
                        },
                        "end": {
                          "line": 404,
                          "column": 40
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 12565,
                        "end": 12578,
                        "loc": {
                          "start": {
                            "line": 404,
                            "column": 24
                          },
                          "end": {
                            "line": 404,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 12565,
                          "end": 12569,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 24
                            },
                            "end": {
                              "line": 404,
                              "column": 28
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12570,
                          "end": 12578,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 29
                            },
                            "end": {
                              "line": 404,
                              "column": 37
                            }
                          },
                          "name": "userData"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12579,
                        "end": 12581,
                        "loc": {
                          "start": {
                            "line": 404,
                            "column": 38
                          },
                          "end": {
                            "line": 404,
                            "column": 40
                          }
                        },
                        "name": "id"
                      },
                      "computed": false
                    },
                    "operator": "===",
                    "right": {
                      "type": "Identifier",
                      "start": 12586,
                      "end": 12588,
                      "loc": {
                        "start": {
                          "line": 404,
                          "column": 45
                        },
                        "end": {
                          "line": 404,
                          "column": 47
                        }
                      },
                      "name": "id"
                    }
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 12590,
                  "end": 12602,
                  "loc": {
                    "start": {
                      "line": 404,
                      "column": 49
                    },
                    "end": {
                      "line": 404,
                      "column": 61
                    }
                  },
                  "argument": {
                    "type": "ThisExpression",
                    "start": 12597,
                    "end": 12601,
                    "loc": {
                      "start": {
                        "line": 404,
                        "column": 56
                      },
                      "end": {
                        "line": 404,
                        "column": 60
                      }
                    }
                  }
                },
                "alternate": null
              },
              {
                "type": "ForStatement",
                "start": 12604,
                "end": 12790,
                "loc": {
                  "start": {
                    "line": 405,
                    "column": 1
                  },
                  "end": {
                    "line": 411,
                    "column": 2
                  }
                },
                "init": {
                  "type": "VariableDeclaration",
                  "start": 12609,
                  "end": 12644,
                  "loc": {
                    "start": {
                      "line": 405,
                      "column": 6
                    },
                    "end": {
                      "line": 405,
                      "column": 41
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 12613,
                      "end": 12618,
                      "loc": {
                        "start": {
                          "line": 405,
                          "column": 10
                        },
                        "end": {
                          "line": 405,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12613,
                        "end": 12614,
                        "loc": {
                          "start": {
                            "line": 405,
                            "column": 10
                          },
                          "end": {
                            "line": 405,
                            "column": 11
                          }
                        },
                        "name": "i"
                      },
                      "init": {
                        "type": "Literal",
                        "start": 12617,
                        "end": 12618,
                        "loc": {
                          "start": {
                            "line": 405,
                            "column": 14
                          },
                          "end": {
                            "line": 405,
                            "column": 15
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    },
                    {
                      "type": "VariableDeclarator",
                      "start": 12620,
                      "end": 12644,
                      "loc": {
                        "start": {
                          "line": 405,
                          "column": 17
                        },
                        "end": {
                          "line": 405,
                          "column": 41
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 12620,
                        "end": 12621,
                        "loc": {
                          "start": {
                            "line": 405,
                            "column": 17
                          },
                          "end": {
                            "line": 405,
                            "column": 18
                          }
                        },
                        "name": "l"
                      },
                      "init": {
                        "type": "MemberExpression",
                        "start": 12624,
                        "end": 12644,
                        "loc": {
                          "start": {
                            "line": 405,
                            "column": 21
                          },
                          "end": {
                            "line": 405,
                            "column": 41
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 12624,
                          "end": 12637,
                          "loc": {
                            "start": {
                              "line": 405,
                              "column": 21
                            },
                            "end": {
                              "line": 405,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12624,
                            "end": 12628,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 21
                              },
                              "end": {
                                "line": 405,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12629,
                            "end": 12637,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 26
                              },
                              "end": {
                                "line": 405,
                                "column": 34
                              }
                            },
                            "name": "children"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12638,
                          "end": 12644,
                          "loc": {
                            "start": {
                              "line": 405,
                              "column": 35
                            },
                            "end": {
                              "line": 405,
                              "column": 41
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "kind": "var"
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 12646,
                  "end": 12651,
                  "loc": {
                    "start": {
                      "line": 405,
                      "column": 43
                    },
                    "end": {
                      "line": 405,
                      "column": 48
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 12646,
                    "end": 12647,
                    "loc": {
                      "start": {
                        "line": 405,
                        "column": 43
                      },
                      "end": {
                        "line": 405,
                        "column": 44
                      }
                    },
                    "name": "i"
                  },
                  "operator": "<",
                  "right": {
                    "type": "Identifier",
                    "start": 12650,
                    "end": 12651,
                    "loc": {
                      "start": {
                        "line": 405,
                        "column": 47
                      },
                      "end": {
                        "line": 405,
                        "column": 48
                      }
                    },
                    "name": "l"
                  }
                },
                "update": {
                  "type": "UpdateExpression",
                  "start": 12653,
                  "end": 12656,
                  "loc": {
                    "start": {
                      "line": 405,
                      "column": 50
                    },
                    "end": {
                      "line": 405,
                      "column": 53
                    }
                  },
                  "operator": "++",
                  "prefix": false,
                  "argument": {
                    "type": "Identifier",
                    "start": 12653,
                    "end": 12654,
                    "loc": {
                      "start": {
                        "line": 405,
                        "column": 50
                      },
                      "end": {
                        "line": 405,
                        "column": 51
                      }
                    },
                    "name": "i"
                  }
                },
                "body": {
                  "type": "BlockStatement",
                  "start": 12658,
                  "end": 12790,
                  "loc": {
                    "start": {
                      "line": 405,
                      "column": 55
                    },
                    "end": {
                      "line": 411,
                      "column": 2
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 12662,
                      "end": 12691,
                      "loc": {
                        "start": {
                          "line": 406,
                          "column": 2
                        },
                        "end": {
                          "line": 406,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12666,
                          "end": 12690,
                          "loc": {
                            "start": {
                              "line": 406,
                              "column": 6
                            },
                            "end": {
                              "line": 406,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12666,
                            "end": 12671,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 6
                              },
                              "end": {
                                "line": 406,
                                "column": 11
                              }
                            },
                            "name": "child"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 12674,
                            "end": 12690,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 14
                              },
                              "end": {
                                "line": 406,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12674,
                              "end": 12687,
                              "loc": {
                                "start": {
                                  "line": 406,
                                  "column": 14
                                },
                                "end": {
                                  "line": 406,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12674,
                                "end": 12678,
                                "loc": {
                                  "start": {
                                    "line": 406,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 406,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12679,
                                "end": 12687,
                                "loc": {
                                  "start": {
                                    "line": 406,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 406,
                                    "column": 27
                                  }
                                },
                                "name": "children"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12688,
                              "end": 12689,
                              "loc": {
                                "start": {
                                  "line": 406,
                                  "column": 28
                                },
                                "end": {
                                  "line": 406,
                                  "column": 29
                                }
                              },
                              "name": "i"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12694,
                      "end": 12735,
                      "loc": {
                        "start": {
                          "line": 407,
                          "column": 2
                        },
                        "end": {
                          "line": 407,
                          "column": 43
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12698,
                          "end": 12734,
                          "loc": {
                            "start": {
                              "line": 407,
                              "column": 6
                            },
                            "end": {
                              "line": 407,
                              "column": 42
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12698,
                            "end": 12704,
                            "loc": {
                              "start": {
                                "line": 407,
                                "column": 6
                              },
                              "end": {
                                "line": 407,
                                "column": 12
                              }
                            },
                            "name": "object"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 12707,
                            "end": 12734,
                            "loc": {
                              "start": {
                                "line": 407,
                                "column": 15
                              },
                              "end": {
                                "line": 407,
                                "column": 42
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12707,
                              "end": 12730,
                              "loc": {
                                "start": {
                                  "line": 407,
                                  "column": 15
                                },
                                "end": {
                                  "line": 407,
                                  "column": 38
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12707,
                                "end": 12712,
                                "loc": {
                                  "start": {
                                    "line": 407,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 407,
                                    "column": 20
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12713,
                                "end": 12730,
                                "loc": {
                                  "start": {
                                    "line": 407,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 407,
                                    "column": 38
                                  }
                                },
                                "name": "getObjectByUserId"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 12731,
                                "end": 12733,
                                "loc": {
                                  "start": {
                                    "line": 407,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 407,
                                    "column": 41
                                  }
                                },
                                "name": "id"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 12738,
                      "end": 12787,
                      "loc": {
                        "start": {
                          "line": 408,
                          "column": 2
                        },
                        "end": {
                          "line": 410,
                          "column": 3
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 12742,
                        "end": 12762,
                        "loc": {
                          "start": {
                            "line": 408,
                            "column": 6
                          },
                          "end": {
                            "line": 408,
                            "column": 26
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 12742,
                          "end": 12748,
                          "loc": {
                            "start": {
                              "line": 408,
                              "column": 6
                            },
                            "end": {
                              "line": 408,
                              "column": 12
                            }
                          },
                          "name": "object"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "Identifier",
                          "start": 12753,
                          "end": 12762,
                          "loc": {
                            "start": {
                              "line": 408,
                              "column": 17
                            },
                            "end": {
                              "line": 408,
                              "column": 26
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 12764,
                        "end": 12787,
                        "loc": {
                          "start": {
                            "line": 408,
                            "column": 28
                          },
                          "end": {
                            "line": 410,
                            "column": 3
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 12769,
                            "end": 12783,
                            "loc": {
                              "start": {
                                "line": 409,
                                "column": 3
                              },
                              "end": {
                                "line": 409,
                                "column": 17
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 12776,
                              "end": 12782,
                              "loc": {
                                "start": {
                                  "line": 409,
                                  "column": 10
                                },
                                "end": {
                                  "line": 409,
                                  "column": 16
                                }
                              },
                              "name": "object"
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 12792,
                "end": 12809,
                "loc": {
                  "start": {
                    "line": 412,
                    "column": 1
                  },
                  "end": {
                    "line": 412,
                    "column": 18
                  }
                },
                "argument": {
                  "type": "Identifier",
                  "start": 12799,
                  "end": 12808,
                  "loc": {
                    "start": {
                      "line": 412,
                      "column": 8
                    },
                    "end": {
                      "line": 412,
                      "column": 17
                    }
                  },
                  "name": "undefined"
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12813,
      "end": 12948,
      "loc": {
        "start": {
          "line": 415,
          "column": 0
        },
        "end": {
          "line": 417,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12813,
        "end": 12948,
        "loc": {
          "start": {
            "line": 415,
            "column": 0
          },
          "end": {
            "line": 417,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12813,
          "end": 12847,
          "loc": {
            "start": {
              "line": 415,
              "column": 0
            },
            "end": {
              "line": 415,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12813,
            "end": 12837,
            "loc": {
              "start": {
                "line": 415,
                "column": 0
              },
              "end": {
                "line": 415,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12813,
              "end": 12827,
              "loc": {
                "start": {
                  "line": 415,
                  "column": 0
                },
                "end": {
                  "line": 415,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12813,
                "end": 12818,
                "loc": {
                  "start": {
                    "line": 415,
                    "column": 0
                  },
                  "end": {
                    "line": 415,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12819,
                "end": 12827,
                "loc": {
                  "start": {
                    "line": 415,
                    "column": 6
                  },
                  "end": {
                    "line": 415,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12828,
              "end": 12837,
              "loc": {
                "start": {
                  "line": 415,
                  "column": 15
                },
                "end": {
                  "line": 415,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12838,
            "end": 12847,
            "loc": {
              "start": {
                "line": 415,
                "column": 25
              },
              "end": {
                "line": 415,
                "column": 34
              }
            },
            "name": "lastChild"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12850,
          "end": 12948,
          "loc": {
            "start": {
              "line": 415,
              "column": 37
            },
            "end": {
              "line": 417,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12838,
            "end": 12847,
            "loc": {
              "start": {
                "line": 415,
                "column": 25
              },
              "end": {
                "line": 415,
                "column": 34
              }
            },
            "name": "lastChild"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 12861,
            "end": 12948,
            "loc": {
              "start": {
                "line": 415,
                "column": 48
              },
              "end": {
                "line": 417,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 12864,
                "end": 12946,
                "loc": {
                  "start": {
                    "line": 416,
                    "column": 1
                  },
                  "end": {
                    "line": 416,
                    "column": 83
                  }
                },
                "argument": {
                  "type": "ConditionalExpression",
                  "start": 12871,
                  "end": 12945,
                  "loc": {
                    "start": {
                      "line": 416,
                      "column": 8
                    },
                    "end": {
                      "line": 416,
                      "column": 82
                    }
                  },
                  "test": {
                    "type": "MemberExpression",
                    "start": 12871,
                    "end": 12891,
                    "loc": {
                      "start": {
                        "line": 416,
                        "column": 8
                      },
                      "end": {
                        "line": 416,
                        "column": 28
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 12871,
                      "end": 12884,
                      "loc": {
                        "start": {
                          "line": 416,
                          "column": 8
                        },
                        "end": {
                          "line": 416,
                          "column": 21
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 12871,
                        "end": 12875,
                        "loc": {
                          "start": {
                            "line": 416,
                            "column": 8
                          },
                          "end": {
                            "line": 416,
                            "column": 12
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12876,
                        "end": 12884,
                        "loc": {
                          "start": {
                            "line": 416,
                            "column": 13
                          },
                          "end": {
                            "line": 416,
                            "column": 21
                          }
                        },
                        "name": "children"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 12885,
                      "end": 12891,
                      "loc": {
                        "start": {
                          "line": 416,
                          "column": 22
                        },
                        "end": {
                          "line": 416,
                          "column": 28
                        }
                      },
                      "name": "length"
                    },
                    "computed": false
                  },
                  "consequent": {
                    "type": "MemberExpression",
                    "start": 12894,
                    "end": 12933,
                    "loc": {
                      "start": {
                        "line": 416,
                        "column": 31
                      },
                      "end": {
                        "line": 416,
                        "column": 70
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 12894,
                      "end": 12907,
                      "loc": {
                        "start": {
                          "line": 416,
                          "column": 31
                        },
                        "end": {
                          "line": 416,
                          "column": 44
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 12894,
                        "end": 12898,
                        "loc": {
                          "start": {
                            "line": 416,
                            "column": 31
                          },
                          "end": {
                            "line": 416,
                            "column": 35
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12899,
                        "end": 12907,
                        "loc": {
                          "start": {
                            "line": 416,
                            "column": 36
                          },
                          "end": {
                            "line": 416,
                            "column": 44
                          }
                        },
                        "name": "children"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "BinaryExpression",
                      "start": 12908,
                      "end": 12932,
                      "loc": {
                        "start": {
                          "line": 416,
                          "column": 45
                        },
                        "end": {
                          "line": 416,
                          "column": 69
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 12908,
                        "end": 12928,
                        "loc": {
                          "start": {
                            "line": 416,
                            "column": 45
                          },
                          "end": {
                            "line": 416,
                            "column": 65
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 12908,
                          "end": 12921,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 45
                            },
                            "end": {
                              "line": 416,
                              "column": 58
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12908,
                            "end": 12912,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 45
                              },
                              "end": {
                                "line": 416,
                                "column": 49
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12913,
                            "end": 12921,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 50
                              },
                              "end": {
                                "line": 416,
                                "column": 58
                              }
                            },
                            "name": "children"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12922,
                          "end": 12928,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 59
                            },
                            "end": {
                              "line": 416,
                              "column": 65
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": "-",
                      "right": {
                        "type": "Literal",
                        "start": 12931,
                        "end": 12932,
                        "loc": {
                          "start": {
                            "line": 416,
                            "column": 68
                          },
                          "end": {
                            "line": 416,
                            "column": 69
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "computed": true
                  },
                  "alternate": {
                    "type": "Identifier",
                    "start": 12936,
                    "end": 12945,
                    "loc": {
                      "start": {
                        "line": 416,
                        "column": 73
                      },
                      "end": {
                        "line": 416,
                        "column": 82
                      }
                    },
                    "name": "undefined"
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 12950,
      "end": 13127,
      "loc": {
        "start": {
          "line": 419,
          "column": 0
        },
        "end": {
          "line": 423,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 12950,
        "end": 13127,
        "loc": {
          "start": {
            "line": 419,
            "column": 0
          },
          "end": {
            "line": 423,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 12950,
          "end": 12986,
          "loc": {
            "start": {
              "line": 419,
              "column": 0
            },
            "end": {
              "line": 419,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 12950,
            "end": 12974,
            "loc": {
              "start": {
                "line": 419,
                "column": 0
              },
              "end": {
                "line": 419,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 12950,
              "end": 12964,
              "loc": {
                "start": {
                  "line": 419,
                  "column": 0
                },
                "end": {
                  "line": 419,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 12950,
                "end": 12955,
                "loc": {
                  "start": {
                    "line": 419,
                    "column": 0
                  },
                  "end": {
                    "line": 419,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 12956,
                "end": 12964,
                "loc": {
                  "start": {
                    "line": 419,
                    "column": 6
                  },
                  "end": {
                    "line": 419,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 12965,
              "end": 12974,
              "loc": {
                "start": {
                  "line": 419,
                  "column": 15
                },
                "end": {
                  "line": 419,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 12975,
            "end": 12986,
            "loc": {
              "start": {
                "line": 419,
                "column": 25
              },
              "end": {
                "line": 419,
                "column": 36
              }
            },
            "name": "setPosition"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 12989,
          "end": 13127,
          "loc": {
            "start": {
              "line": 419,
              "column": 39
            },
            "end": {
              "line": 423,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 12975,
            "end": 12986,
            "loc": {
              "start": {
                "line": 419,
                "column": 25
              },
              "end": {
                "line": 419,
                "column": 36
              }
            },
            "name": "setPosition"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 12998,
              "end": 13004,
              "loc": {
                "start": {
                  "line": 419,
                  "column": 48
                },
                "end": {
                  "line": 419,
                  "column": 54
                }
              },
              "name": "vector"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13006,
            "end": 13127,
            "loc": {
              "start": {
                "line": 419,
                "column": 56
              },
              "end": {
                "line": 423,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13009,
                "end": 13082,
                "loc": {
                  "start": {
                    "line": 420,
                    "column": 1
                  },
                  "end": {
                    "line": 420,
                    "column": 74
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13009,
                  "end": 13081,
                  "loc": {
                    "start": {
                      "line": 420,
                      "column": 1
                    },
                    "end": {
                      "line": 420,
                      "column": 73
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 13009,
                    "end": 13015,
                    "loc": {
                      "start": {
                        "line": 420,
                        "column": 1
                      },
                      "end": {
                        "line": 420,
                        "column": 7
                      }
                    },
                    "name": "vector"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 13018,
                    "end": 13081,
                    "loc": {
                      "start": {
                        "line": 420,
                        "column": 10
                      },
                      "end": {
                        "line": 420,
                        "column": 73
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 13018,
                      "end": 13038,
                      "loc": {
                        "start": {
                          "line": 420,
                          "column": 10
                        },
                        "end": {
                          "line": 420,
                          "column": 30
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 13018,
                        "end": 13034,
                        "loc": {
                          "start": {
                            "line": 420,
                            "column": 10
                          },
                          "end": {
                            "line": 420,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13018,
                          "end": 13027,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 10
                            },
                            "end": {
                              "line": 420,
                              "column": 19
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13028,
                          "end": 13034,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 20
                            },
                            "end": {
                              "line": 420,
                              "column": 26
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 13037,
                        "end": 13038,
                        "loc": {
                          "start": {
                            "line": 420,
                            "column": 29
                          },
                          "end": {
                            "line": 420,
                            "column": 30
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "NewExpression",
                      "start": 13041,
                      "end": 13072,
                      "loc": {
                        "start": {
                          "line": 420,
                          "column": 33
                        },
                        "end": {
                          "line": 420,
                          "column": 64
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13045,
                        "end": 13058,
                        "loc": {
                          "start": {
                            "line": 420,
                            "column": 37
                          },
                          "end": {
                            "line": 420,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13045,
                          "end": 13050,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 37
                            },
                            "end": {
                              "line": 420,
                              "column": 42
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13051,
                          "end": 13058,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 43
                            },
                            "end": {
                              "line": 420,
                              "column": 50
                            }
                          },
                          "name": "Vector3"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "SpreadElement",
                          "start": 13059,
                          "end": 13071,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 51
                            },
                            "end": {
                              "line": 420,
                              "column": 63
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 13062,
                            "end": 13071,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 54
                              },
                              "end": {
                                "line": 420,
                                "column": 63
                              }
                            },
                            "name": "arguments"
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 13075,
                      "end": 13081,
                      "loc": {
                        "start": {
                          "line": 420,
                          "column": 67
                        },
                        "end": {
                          "line": 420,
                          "column": 73
                        }
                      },
                      "name": "vector"
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13084,
                "end": 13111,
                "loc": {
                  "start": {
                    "line": 421,
                    "column": 1
                  },
                  "end": {
                    "line": 421,
                    "column": 28
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 13084,
                  "end": 13110,
                  "loc": {
                    "start": {
                      "line": 421,
                      "column": 1
                    },
                    "end": {
                      "line": 421,
                      "column": 27
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13084,
                    "end": 13102,
                    "loc": {
                      "start": {
                        "line": 421,
                        "column": 1
                      },
                      "end": {
                        "line": 421,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13084,
                      "end": 13097,
                      "loc": {
                        "start": {
                          "line": 421,
                          "column": 1
                        },
                        "end": {
                          "line": 421,
                          "column": 14
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13084,
                        "end": 13088,
                        "loc": {
                          "start": {
                            "line": 421,
                            "column": 1
                          },
                          "end": {
                            "line": 421,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13089,
                        "end": 13097,
                        "loc": {
                          "start": {
                            "line": 421,
                            "column": 6
                          },
                          "end": {
                            "line": 421,
                            "column": 14
                          }
                        },
                        "name": "position"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13098,
                      "end": 13102,
                      "loc": {
                        "start": {
                          "line": 421,
                          "column": 15
                        },
                        "end": {
                          "line": 421,
                          "column": 19
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 13103,
                      "end": 13109,
                      "loc": {
                        "start": {
                          "line": 421,
                          "column": 20
                        },
                        "end": {
                          "line": 421,
                          "column": 26
                        }
                      },
                      "name": "vector"
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13113,
                "end": 13125,
                "loc": {
                  "start": {
                    "line": 422,
                    "column": 1
                  },
                  "end": {
                    "line": 422,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 13120,
                  "end": 13124,
                  "loc": {
                    "start": {
                      "line": 422,
                      "column": 8
                    },
                    "end": {
                      "line": 422,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13129,
      "end": 13304,
      "loc": {
        "start": {
          "line": 425,
          "column": 0
        },
        "end": {
          "line": 429,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13129,
        "end": 13304,
        "loc": {
          "start": {
            "line": 425,
            "column": 0
          },
          "end": {
            "line": 429,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13129,
          "end": 13165,
          "loc": {
            "start": {
              "line": 425,
              "column": 0
            },
            "end": {
              "line": 425,
              "column": 36
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13129,
            "end": 13153,
            "loc": {
              "start": {
                "line": 425,
                "column": 0
              },
              "end": {
                "line": 425,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13129,
              "end": 13143,
              "loc": {
                "start": {
                  "line": 425,
                  "column": 0
                },
                "end": {
                  "line": 425,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13129,
                "end": 13134,
                "loc": {
                  "start": {
                    "line": 425,
                    "column": 0
                  },
                  "end": {
                    "line": 425,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13135,
                "end": 13143,
                "loc": {
                  "start": {
                    "line": 425,
                    "column": 6
                  },
                  "end": {
                    "line": 425,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13144,
              "end": 13153,
              "loc": {
                "start": {
                  "line": 425,
                  "column": 15
                },
                "end": {
                  "line": 425,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13154,
            "end": 13165,
            "loc": {
              "start": {
                "line": 425,
                "column": 25
              },
              "end": {
                "line": 425,
                "column": 36
              }
            },
            "name": "setRotation"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13168,
          "end": 13304,
          "loc": {
            "start": {
              "line": 425,
              "column": 39
            },
            "end": {
              "line": 429,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13154,
            "end": 13165,
            "loc": {
              "start": {
                "line": 425,
                "column": 25
              },
              "end": {
                "line": 425,
                "column": 36
              }
            },
            "name": "setRotation"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 13177,
              "end": 13183,
              "loc": {
                "start": {
                  "line": 425,
                  "column": 48
                },
                "end": {
                  "line": 425,
                  "column": 54
                }
              },
              "name": "vector"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13185,
            "end": 13304,
            "loc": {
              "start": {
                "line": 425,
                "column": 56
              },
              "end": {
                "line": 429,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13188,
                "end": 13259,
                "loc": {
                  "start": {
                    "line": 426,
                    "column": 1
                  },
                  "end": {
                    "line": 426,
                    "column": 72
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13188,
                  "end": 13258,
                  "loc": {
                    "start": {
                      "line": 426,
                      "column": 1
                    },
                    "end": {
                      "line": 426,
                      "column": 71
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 13188,
                    "end": 13194,
                    "loc": {
                      "start": {
                        "line": 426,
                        "column": 1
                      },
                      "end": {
                        "line": 426,
                        "column": 7
                      }
                    },
                    "name": "vector"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 13197,
                    "end": 13258,
                    "loc": {
                      "start": {
                        "line": 426,
                        "column": 10
                      },
                      "end": {
                        "line": 426,
                        "column": 71
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 13197,
                      "end": 13217,
                      "loc": {
                        "start": {
                          "line": 426,
                          "column": 10
                        },
                        "end": {
                          "line": 426,
                          "column": 30
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 13197,
                        "end": 13213,
                        "loc": {
                          "start": {
                            "line": 426,
                            "column": 10
                          },
                          "end": {
                            "line": 426,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13197,
                          "end": 13206,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 10
                            },
                            "end": {
                              "line": 426,
                              "column": 19
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13207,
                          "end": 13213,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 20
                            },
                            "end": {
                              "line": 426,
                              "column": 26
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 13216,
                        "end": 13217,
                        "loc": {
                          "start": {
                            "line": 426,
                            "column": 29
                          },
                          "end": {
                            "line": 426,
                            "column": 30
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "NewExpression",
                      "start": 13220,
                      "end": 13249,
                      "loc": {
                        "start": {
                          "line": 426,
                          "column": 33
                        },
                        "end": {
                          "line": 426,
                          "column": 62
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13224,
                        "end": 13235,
                        "loc": {
                          "start": {
                            "line": 426,
                            "column": 37
                          },
                          "end": {
                            "line": 426,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13224,
                          "end": 13229,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 37
                            },
                            "end": {
                              "line": 426,
                              "column": 42
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13230,
                          "end": 13235,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 43
                            },
                            "end": {
                              "line": 426,
                              "column": 48
                            }
                          },
                          "name": "Euler"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "SpreadElement",
                          "start": 13236,
                          "end": 13248,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 49
                            },
                            "end": {
                              "line": 426,
                              "column": 61
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 13239,
                            "end": 13248,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 52
                              },
                              "end": {
                                "line": 426,
                                "column": 61
                              }
                            },
                            "name": "arguments"
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 13252,
                      "end": 13258,
                      "loc": {
                        "start": {
                          "line": 426,
                          "column": 65
                        },
                        "end": {
                          "line": 426,
                          "column": 71
                        }
                      },
                      "name": "vector"
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13261,
                "end": 13288,
                "loc": {
                  "start": {
                    "line": 427,
                    "column": 1
                  },
                  "end": {
                    "line": 427,
                    "column": 28
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 13261,
                  "end": 13287,
                  "loc": {
                    "start": {
                      "line": 427,
                      "column": 1
                    },
                    "end": {
                      "line": 427,
                      "column": 27
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13261,
                    "end": 13279,
                    "loc": {
                      "start": {
                        "line": 427,
                        "column": 1
                      },
                      "end": {
                        "line": 427,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13261,
                      "end": 13274,
                      "loc": {
                        "start": {
                          "line": 427,
                          "column": 1
                        },
                        "end": {
                          "line": 427,
                          "column": 14
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13261,
                        "end": 13265,
                        "loc": {
                          "start": {
                            "line": 427,
                            "column": 1
                          },
                          "end": {
                            "line": 427,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13266,
                        "end": 13274,
                        "loc": {
                          "start": {
                            "line": 427,
                            "column": 6
                          },
                          "end": {
                            "line": 427,
                            "column": 14
                          }
                        },
                        "name": "rotation"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13275,
                      "end": 13279,
                      "loc": {
                        "start": {
                          "line": 427,
                          "column": 15
                        },
                        "end": {
                          "line": 427,
                          "column": 19
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 13280,
                      "end": 13286,
                      "loc": {
                        "start": {
                          "line": 427,
                          "column": 20
                        },
                        "end": {
                          "line": 427,
                          "column": 26
                        }
                      },
                      "name": "vector"
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13290,
                "end": 13302,
                "loc": {
                  "start": {
                    "line": 428,
                    "column": 1
                  },
                  "end": {
                    "line": 428,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 13297,
                  "end": 13301,
                  "loc": {
                    "start": {
                      "line": 428,
                      "column": 8
                    },
                    "end": {
                      "line": 428,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13306,
      "end": 13477,
      "loc": {
        "start": {
          "line": 431,
          "column": 0
        },
        "end": {
          "line": 435,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13306,
        "end": 13477,
        "loc": {
          "start": {
            "line": 431,
            "column": 0
          },
          "end": {
            "line": 435,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13306,
          "end": 13339,
          "loc": {
            "start": {
              "line": 431,
              "column": 0
            },
            "end": {
              "line": 431,
              "column": 33
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13306,
            "end": 13330,
            "loc": {
              "start": {
                "line": 431,
                "column": 0
              },
              "end": {
                "line": 431,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13306,
              "end": 13320,
              "loc": {
                "start": {
                  "line": 431,
                  "column": 0
                },
                "end": {
                  "line": 431,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13306,
                "end": 13311,
                "loc": {
                  "start": {
                    "line": 431,
                    "column": 0
                  },
                  "end": {
                    "line": 431,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13312,
                "end": 13320,
                "loc": {
                  "start": {
                    "line": 431,
                    "column": 6
                  },
                  "end": {
                    "line": 431,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13321,
              "end": 13330,
              "loc": {
                "start": {
                  "line": 431,
                  "column": 15
                },
                "end": {
                  "line": 431,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13331,
            "end": 13339,
            "loc": {
              "start": {
                "line": 431,
                "column": 25
              },
              "end": {
                "line": 431,
                "column": 33
              }
            },
            "name": "setScale"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13342,
          "end": 13477,
          "loc": {
            "start": {
              "line": 431,
              "column": 36
            },
            "end": {
              "line": 435,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13331,
            "end": 13339,
            "loc": {
              "start": {
                "line": 431,
                "column": 25
              },
              "end": {
                "line": 431,
                "column": 33
              }
            },
            "name": "setScale"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 13351,
              "end": 13357,
              "loc": {
                "start": {
                  "line": 431,
                  "column": 45
                },
                "end": {
                  "line": 431,
                  "column": 51
                }
              },
              "name": "vector"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13359,
            "end": 13477,
            "loc": {
              "start": {
                "line": 431,
                "column": 53
              },
              "end": {
                "line": 435,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13362,
                "end": 13435,
                "loc": {
                  "start": {
                    "line": 432,
                    "column": 1
                  },
                  "end": {
                    "line": 432,
                    "column": 74
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13362,
                  "end": 13434,
                  "loc": {
                    "start": {
                      "line": 432,
                      "column": 1
                    },
                    "end": {
                      "line": 432,
                      "column": 73
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "Identifier",
                    "start": 13362,
                    "end": 13368,
                    "loc": {
                      "start": {
                        "line": 432,
                        "column": 1
                      },
                      "end": {
                        "line": 432,
                        "column": 7
                      }
                    },
                    "name": "vector"
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 13371,
                    "end": 13434,
                    "loc": {
                      "start": {
                        "line": 432,
                        "column": 10
                      },
                      "end": {
                        "line": 432,
                        "column": 73
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 13371,
                      "end": 13391,
                      "loc": {
                        "start": {
                          "line": 432,
                          "column": 10
                        },
                        "end": {
                          "line": 432,
                          "column": 30
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 13371,
                        "end": 13387,
                        "loc": {
                          "start": {
                            "line": 432,
                            "column": 10
                          },
                          "end": {
                            "line": 432,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13371,
                          "end": 13380,
                          "loc": {
                            "start": {
                              "line": 432,
                              "column": 10
                            },
                            "end": {
                              "line": 432,
                              "column": 19
                            }
                          },
                          "name": "arguments"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13381,
                          "end": 13387,
                          "loc": {
                            "start": {
                              "line": 432,
                              "column": 20
                            },
                            "end": {
                              "line": 432,
                              "column": 26
                            }
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "operator": ">",
                      "right": {
                        "type": "Literal",
                        "start": 13390,
                        "end": 13391,
                        "loc": {
                          "start": {
                            "line": 432,
                            "column": 29
                          },
                          "end": {
                            "line": 432,
                            "column": 30
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      }
                    },
                    "consequent": {
                      "type": "NewExpression",
                      "start": 13394,
                      "end": 13425,
                      "loc": {
                        "start": {
                          "line": 432,
                          "column": 33
                        },
                        "end": {
                          "line": 432,
                          "column": 64
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13398,
                        "end": 13411,
                        "loc": {
                          "start": {
                            "line": 432,
                            "column": 37
                          },
                          "end": {
                            "line": 432,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13398,
                          "end": 13403,
                          "loc": {
                            "start": {
                              "line": 432,
                              "column": 37
                            },
                            "end": {
                              "line": 432,
                              "column": 42
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13404,
                          "end": 13411,
                          "loc": {
                            "start": {
                              "line": 432,
                              "column": 43
                            },
                            "end": {
                              "line": 432,
                              "column": 50
                            }
                          },
                          "name": "Vector3"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "SpreadElement",
                          "start": 13412,
                          "end": 13424,
                          "loc": {
                            "start": {
                              "line": 432,
                              "column": 51
                            },
                            "end": {
                              "line": 432,
                              "column": 63
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 13415,
                            "end": 13424,
                            "loc": {
                              "start": {
                                "line": 432,
                                "column": 54
                              },
                              "end": {
                                "line": 432,
                                "column": 63
                              }
                            },
                            "name": "arguments"
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Identifier",
                      "start": 13428,
                      "end": 13434,
                      "loc": {
                        "start": {
                          "line": 432,
                          "column": 67
                        },
                        "end": {
                          "line": 432,
                          "column": 73
                        }
                      },
                      "name": "vector"
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13437,
                "end": 13461,
                "loc": {
                  "start": {
                    "line": 433,
                    "column": 1
                  },
                  "end": {
                    "line": 433,
                    "column": 25
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 13437,
                  "end": 13460,
                  "loc": {
                    "start": {
                      "line": 433,
                      "column": 1
                    },
                    "end": {
                      "line": 433,
                      "column": 24
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13437,
                    "end": 13452,
                    "loc": {
                      "start": {
                        "line": 433,
                        "column": 1
                      },
                      "end": {
                        "line": 433,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13437,
                      "end": 13447,
                      "loc": {
                        "start": {
                          "line": 433,
                          "column": 1
                        },
                        "end": {
                          "line": 433,
                          "column": 11
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13437,
                        "end": 13441,
                        "loc": {
                          "start": {
                            "line": 433,
                            "column": 1
                          },
                          "end": {
                            "line": 433,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13442,
                        "end": 13447,
                        "loc": {
                          "start": {
                            "line": 433,
                            "column": 6
                          },
                          "end": {
                            "line": 433,
                            "column": 11
                          }
                        },
                        "name": "scale"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13448,
                      "end": 13452,
                      "loc": {
                        "start": {
                          "line": 433,
                          "column": 12
                        },
                        "end": {
                          "line": 433,
                          "column": 16
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 13453,
                      "end": 13459,
                      "loc": {
                        "start": {
                          "line": 433,
                          "column": 17
                        },
                        "end": {
                          "line": 433,
                          "column": 23
                        }
                      },
                      "name": "vector"
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13463,
                "end": 13475,
                "loc": {
                  "start": {
                    "line": 434,
                    "column": 1
                  },
                  "end": {
                    "line": 434,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 13470,
                  "end": 13474,
                  "loc": {
                    "start": {
                      "line": 434,
                      "column": 8
                    },
                    "end": {
                      "line": 434,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13479,
      "end": 13703,
      "loc": {
        "start": {
          "line": 437,
          "column": 0
        },
        "end": {
          "line": 444,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13479,
        "end": 13703,
        "loc": {
          "start": {
            "line": 437,
            "column": 0
          },
          "end": {
            "line": 444,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13479,
          "end": 13518,
          "loc": {
            "start": {
              "line": 437,
              "column": 0
            },
            "end": {
              "line": 437,
              "column": 39
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13479,
            "end": 13503,
            "loc": {
              "start": {
                "line": 437,
                "column": 0
              },
              "end": {
                "line": 437,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13479,
              "end": 13493,
              "loc": {
                "start": {
                  "line": 437,
                  "column": 0
                },
                "end": {
                  "line": 437,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13479,
                "end": 13484,
                "loc": {
                  "start": {
                    "line": 437,
                    "column": 0
                  },
                  "end": {
                    "line": 437,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13485,
                "end": 13493,
                "loc": {
                  "start": {
                    "line": 437,
                    "column": 6
                  },
                  "end": {
                    "line": 437,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13494,
              "end": 13503,
              "loc": {
                "start": {
                  "line": 437,
                  "column": 15
                },
                "end": {
                  "line": 437,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13504,
            "end": 13518,
            "loc": {
              "start": {
                "line": 437,
                "column": 25
              },
              "end": {
                "line": 437,
                "column": 39
              }
            },
            "name": "setRenderOrder"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13521,
          "end": 13703,
          "loc": {
            "start": {
              "line": 437,
              "column": 42
            },
            "end": {
              "line": 444,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13504,
            "end": 13518,
            "loc": {
              "start": {
                "line": 437,
                "column": 25
              },
              "end": {
                "line": 437,
                "column": 39
              }
            },
            "name": "setRenderOrder"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 13530,
              "end": 13535,
              "loc": {
                "start": {
                  "line": 437,
                  "column": 51
                },
                "end": {
                  "line": 437,
                  "column": 56
                }
              },
              "name": "index"
            },
            {
              "type": "Identifier",
              "start": 13537,
              "end": 13542,
              "loc": {
                "start": {
                  "line": 437,
                  "column": 58
                },
                "end": {
                  "line": 437,
                  "column": 63
                }
              },
              "name": "lines"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13544,
            "end": 13703,
            "loc": {
              "start": {
                "line": 437,
                "column": 65
              },
              "end": {
                "line": 444,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13547,
                "end": 13687,
                "loc": {
                  "start": {
                    "line": 438,
                    "column": 1
                  },
                  "end": {
                    "line": 442,
                    "column": 4
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 13547,
                  "end": 13686,
                  "loc": {
                    "start": {
                      "line": 438,
                      "column": 1
                    },
                    "end": {
                      "line": 442,
                      "column": 3
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13547,
                    "end": 13560,
                    "loc": {
                      "start": {
                        "line": 438,
                        "column": 1
                      },
                      "end": {
                        "line": 438,
                        "column": 14
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 13547,
                      "end": 13551,
                      "loc": {
                        "start": {
                          "line": 438,
                          "column": 1
                        },
                        "end": {
                          "line": 438,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13552,
                      "end": 13560,
                      "loc": {
                        "start": {
                          "line": 438,
                          "column": 6
                        },
                        "end": {
                          "line": 438,
                          "column": 14
                        }
                      },
                      "name": "traverse"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "ArrowFunctionExpression",
                      "start": 13561,
                      "end": 13685,
                      "loc": {
                        "start": {
                          "line": 438,
                          "column": 15
                        },
                        "end": {
                          "line": 442,
                          "column": 2
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 13561,
                          "end": 13565,
                          "loc": {
                            "start": {
                              "line": 438,
                              "column": 15
                            },
                            "end": {
                              "line": 438,
                              "column": 19
                            }
                          },
                          "name": "item"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 13569,
                        "end": 13685,
                        "loc": {
                          "start": {
                            "line": 438,
                            "column": 23
                          },
                          "end": {
                            "line": 442,
                            "column": 2
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 13573,
                            "end": 13682,
                            "loc": {
                              "start": {
                                "line": 439,
                                "column": 2
                              },
                              "end": {
                                "line": 441,
                                "column": 3
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 13577,
                              "end": 13646,
                              "loc": {
                                "start": {
                                  "line": 439,
                                  "column": 6
                                },
                                "end": {
                                  "line": 439,
                                  "column": 75
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 13577,
                                "end": 13603,
                                "loc": {
                                  "start": {
                                    "line": 439,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 439,
                                    "column": 32
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 13577,
                                  "end": 13581,
                                  "loc": {
                                    "start": {
                                      "line": 439,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 439,
                                      "column": 10
                                    }
                                  },
                                  "name": "item"
                                },
                                "operator": "instanceof",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 13593,
                                  "end": 13603,
                                  "loc": {
                                    "start": {
                                      "line": 439,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 439,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13593,
                                    "end": 13598,
                                    "loc": {
                                      "start": {
                                        "line": 439,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 439,
                                        "column": 27
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13599,
                                    "end": 13603,
                                    "loc": {
                                      "start": {
                                        "line": 439,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 439,
                                        "column": 32
                                      }
                                    },
                                    "name": "Mesh"
                                  },
                                  "computed": false
                                }
                              },
                              "operator": "||",
                              "right": {
                                "type": "LogicalExpression",
                                "start": 13608,
                                "end": 13645,
                                "loc": {
                                  "start": {
                                    "line": 439,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 439,
                                    "column": 74
                                  }
                                },
                                "left": {
                                  "type": "UnaryExpression",
                                  "start": 13608,
                                  "end": 13615,
                                  "loc": {
                                    "start": {
                                      "line": 439,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 439,
                                      "column": 44
                                    }
                                  },
                                  "operator": "!",
                                  "prefix": true,
                                  "argument": {
                                    "type": "UnaryExpression",
                                    "start": 13609,
                                    "end": 13615,
                                    "loc": {
                                      "start": {
                                        "line": 439,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 439,
                                        "column": 44
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "Identifier",
                                      "start": 13610,
                                      "end": 13615,
                                      "loc": {
                                        "start": {
                                          "line": 439,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 439,
                                          "column": 44
                                        }
                                      },
                                      "name": "lines"
                                    }
                                  }
                                },
                                "operator": "&&",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 13619,
                                  "end": 13645,
                                  "loc": {
                                    "start": {
                                      "line": 439,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 439,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 13619,
                                    "end": 13623,
                                    "loc": {
                                      "start": {
                                        "line": 439,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 439,
                                        "column": 52
                                      }
                                    },
                                    "name": "item"
                                  },
                                  "operator": "instanceof",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 13635,
                                    "end": 13645,
                                    "loc": {
                                      "start": {
                                        "line": 439,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 439,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 13635,
                                      "end": 13640,
                                      "loc": {
                                        "start": {
                                          "line": 439,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 439,
                                          "column": 69
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 13641,
                                      "end": 13645,
                                      "loc": {
                                        "start": {
                                          "line": 439,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 439,
                                          "column": 74
                                        }
                                      },
                                      "name": "Line"
                                    },
                                    "computed": false
                                  }
                                },
                                "parenthesizedExpression": true
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 13648,
                              "end": 13682,
                              "loc": {
                                "start": {
                                  "line": 439,
                                  "column": 77
                                },
                                "end": {
                                  "line": 441,
                                  "column": 3
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 13653,
                                  "end": 13678,
                                  "loc": {
                                    "start": {
                                      "line": 440,
                                      "column": 3
                                    },
                                    "end": {
                                      "line": 440,
                                      "column": 28
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 13653,
                                    "end": 13677,
                                    "loc": {
                                      "start": {
                                        "line": 440,
                                        "column": 3
                                      },
                                      "end": {
                                        "line": 440,
                                        "column": 27
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 13653,
                                      "end": 13669,
                                      "loc": {
                                        "start": {
                                          "line": 440,
                                          "column": 3
                                        },
                                        "end": {
                                          "line": 440,
                                          "column": 19
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 13653,
                                        "end": 13657,
                                        "loc": {
                                          "start": {
                                            "line": 440,
                                            "column": 3
                                          },
                                          "end": {
                                            "line": 440,
                                            "column": 7
                                          }
                                        },
                                        "name": "item"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 13658,
                                        "end": 13669,
                                        "loc": {
                                          "start": {
                                            "line": 440,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 440,
                                            "column": 19
                                          }
                                        },
                                        "name": "renderOrder"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 13672,
                                      "end": 13677,
                                      "loc": {
                                        "start": {
                                          "line": 440,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 440,
                                          "column": 27
                                        }
                                      },
                                      "name": "index"
                                    }
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "type": "ReturnStatement",
                "start": 13689,
                "end": 13701,
                "loc": {
                  "start": {
                    "line": 443,
                    "column": 1
                  },
                  "end": {
                    "line": 443,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 13696,
                  "end": 13700,
                  "loc": {
                    "start": {
                      "line": 443,
                      "column": 8
                    },
                    "end": {
                      "line": 443,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 13705,
      "end": 14106,
      "loc": {
        "start": {
          "line": 446,
          "column": 0
        },
        "end": {
          "line": 455,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13705,
        "end": 14106,
        "loc": {
          "start": {
            "line": 446,
            "column": 0
          },
          "end": {
            "line": 455,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13705,
          "end": 13742,
          "loc": {
            "start": {
              "line": 446,
              "column": 0
            },
            "end": {
              "line": 446,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13705,
            "end": 13729,
            "loc": {
              "start": {
                "line": 446,
                "column": 0
              },
              "end": {
                "line": 446,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 13705,
              "end": 13719,
              "loc": {
                "start": {
                  "line": 446,
                  "column": 0
                },
                "end": {
                  "line": 446,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 13705,
                "end": 13710,
                "loc": {
                  "start": {
                    "line": 446,
                    "column": 0
                  },
                  "end": {
                    "line": 446,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 13711,
                "end": 13719,
                "loc": {
                  "start": {
                    "line": 446,
                    "column": 6
                  },
                  "end": {
                    "line": 446,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 13720,
              "end": 13729,
              "loc": {
                "start": {
                  "line": 446,
                  "column": 15
                },
                "end": {
                  "line": 446,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 13730,
            "end": 13742,
            "loc": {
              "start": {
                "line": 446,
                "column": 25
              },
              "end": {
                "line": 446,
                "column": 37
              }
            },
            "name": "updateBounds"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 13745,
          "end": 14106,
          "loc": {
            "start": {
              "line": 446,
              "column": 40
            },
            "end": {
              "line": 455,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 13730,
            "end": 13742,
            "loc": {
              "start": {
                "line": 446,
                "column": 25
              },
              "end": {
                "line": 446,
                "column": 37
              }
            },
            "name": "updateBounds"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 13754,
              "end": 13769,
              "loc": {
                "start": {
                  "line": 446,
                  "column": 49
                },
                "end": {
                  "line": 446,
                  "column": 64
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 13754,
                "end": 13757,
                "loc": {
                  "start": {
                    "line": 446,
                    "column": 49
                  },
                  "end": {
                    "line": 446,
                    "column": 52
                  }
                },
                "name": "box"
              },
              "right": {
                "type": "Identifier",
                "start": 13760,
                "end": 13769,
                "loc": {
                  "start": {
                    "line": 446,
                    "column": 55
                  },
                  "end": {
                    "line": 446,
                    "column": 64
                  }
                },
                "name": "undefined"
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 13771,
            "end": 14106,
            "loc": {
              "start": {
                "line": 446,
                "column": 66
              },
              "end": {
                "line": 455,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 13774,
                "end": 13862,
                "loc": {
                  "start": {
                    "line": 447,
                    "column": 1
                  },
                  "end": {
                    "line": 450,
                    "column": 3
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13774,
                  "end": 13861,
                  "loc": {
                    "start": {
                      "line": 447,
                      "column": 1
                    },
                    "end": {
                      "line": 450,
                      "column": 2
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 13774,
                    "end": 13785,
                    "loc": {
                      "start": {
                        "line": 447,
                        "column": 1
                      },
                      "end": {
                        "line": 447,
                        "column": 12
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 13774,
                      "end": 13778,
                      "loc": {
                        "start": {
                          "line": 447,
                          "column": 1
                        },
                        "end": {
                          "line": 447,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13779,
                      "end": 13785,
                      "loc": {
                        "start": {
                          "line": 447,
                          "column": 6
                        },
                        "end": {
                          "line": 447,
                          "column": 12
                        }
                      },
                      "name": "bounds"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "LogicalExpression",
                    "start": 13788,
                    "end": 13861,
                    "loc": {
                      "start": {
                        "line": 447,
                        "column": 15
                      },
                      "end": {
                        "line": 450,
                        "column": 2
                      }
                    },
                    "left": {
                      "type": "MemberExpression",
                      "start": 13788,
                      "end": 13799,
                      "loc": {
                        "start": {
                          "line": 447,
                          "column": 15
                        },
                        "end": {
                          "line": 447,
                          "column": 26
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13788,
                        "end": 13792,
                        "loc": {
                          "start": {
                            "line": 447,
                            "column": 15
                          },
                          "end": {
                            "line": 447,
                            "column": 19
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13793,
                        "end": 13799,
                        "loc": {
                          "start": {
                            "line": 447,
                            "column": 20
                          },
                          "end": {
                            "line": 447,
                            "column": 26
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "operator": "||",
                    "right": {
                      "type": "ObjectExpression",
                      "start": 13803,
                      "end": 13861,
                      "loc": {
                        "start": {
                          "line": 447,
                          "column": 30
                        },
                        "end": {
                          "line": 450,
                          "column": 2
                        }
                      },
                      "properties": [
                        {
                          "type": "Property",
                          "start": 13807,
                          "end": 13828,
                          "loc": {
                            "start": {
                              "line": 448,
                              "column": 2
                            },
                            "end": {
                              "line": 448,
                              "column": 23
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 13807,
                            "end": 13810,
                            "loc": {
                              "start": {
                                "line": 448,
                                "column": 2
                              },
                              "end": {
                                "line": 448,
                                "column": 5
                              }
                            },
                            "name": "box"
                          },
                          "value": {
                            "type": "NewExpression",
                            "start": 13812,
                            "end": 13828,
                            "loc": {
                              "start": {
                                "line": 448,
                                "column": 7
                              },
                              "end": {
                                "line": 448,
                                "column": 23
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13816,
                              "end": 13826,
                              "loc": {
                                "start": {
                                  "line": 448,
                                  "column": 11
                                },
                                "end": {
                                  "line": 448,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13816,
                                "end": 13821,
                                "loc": {
                                  "start": {
                                    "line": 448,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 448,
                                    "column": 16
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13822,
                                "end": 13826,
                                "loc": {
                                  "start": {
                                    "line": 448,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 448,
                                    "column": 21
                                  }
                                },
                                "name": "Box3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "kind": "init"
                        },
                        {
                          "type": "Property",
                          "start": 13832,
                          "end": 13858,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 2
                            },
                            "end": {
                              "line": 449,
                              "column": 28
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 13832,
                            "end": 13838,
                            "loc": {
                              "start": {
                                "line": 449,
                                "column": 2
                              },
                              "end": {
                                "line": 449,
                                "column": 8
                              }
                            },
                            "name": "sphere"
                          },
                          "value": {
                            "type": "NewExpression",
                            "start": 13840,
                            "end": 13858,
                            "loc": {
                              "start": {
                                "line": 449,
                                "column": 10
                              },
                              "end": {
                                "line": 449,
                                "column": 28
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13844,
                              "end": 13856,
                              "loc": {
                                "start": {
                                  "line": 449,
                                  "column": 14
                                },
                                "end": {
                                  "line": 449,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13844,
                                "end": 13849,
                                "loc": {
                                  "start": {
                                    "line": 449,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 449,
                                    "column": 19
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13850,
                                "end": 13856,
                                "loc": {
                                  "start": {
                                    "line": 449,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 449,
                                    "column": 26
                                  }
                                },
                                "name": "Sphere"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "kind": "init"
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13864,
                "end": 13956,
                "loc": {
                  "start": {
                    "line": 451,
                    "column": 1
                  },
                  "end": {
                    "line": 451,
                    "column": 93
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13864,
                  "end": 13955,
                  "loc": {
                    "start": {
                      "line": 451,
                      "column": 1
                    },
                    "end": {
                      "line": 451,
                      "column": 92
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 13864,
                    "end": 13879,
                    "loc": {
                      "start": {
                        "line": 451,
                        "column": 1
                      },
                      "end": {
                        "line": 451,
                        "column": 16
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13864,
                      "end": 13875,
                      "loc": {
                        "start": {
                          "line": 451,
                          "column": 1
                        },
                        "end": {
                          "line": 451,
                          "column": 12
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13864,
                        "end": 13868,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 1
                          },
                          "end": {
                            "line": 451,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13869,
                        "end": 13875,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 6
                          },
                          "end": {
                            "line": 451,
                            "column": 12
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13876,
                      "end": 13879,
                      "loc": {
                        "start": {
                          "line": 451,
                          "column": 13
                        },
                        "end": {
                          "line": 451,
                          "column": 16
                        }
                      },
                      "name": "box"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "ConditionalExpression",
                    "start": 13882,
                    "end": 13955,
                    "loc": {
                      "start": {
                        "line": 451,
                        "column": 19
                      },
                      "end": {
                        "line": 451,
                        "column": 92
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 13882,
                      "end": 13887,
                      "loc": {
                        "start": {
                          "line": 451,
                          "column": 19
                        },
                        "end": {
                          "line": 451,
                          "column": 24
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "UnaryExpression",
                        "start": 13883,
                        "end": 13887,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 20
                          },
                          "end": {
                            "line": 451,
                            "column": 24
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 13884,
                          "end": 13887,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 21
                            },
                            "end": {
                              "line": 451,
                              "column": 24
                            }
                          },
                          "name": "box"
                        }
                      }
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 13890,
                      "end": 13916,
                      "loc": {
                        "start": {
                          "line": 451,
                          "column": 27
                        },
                        "end": {
                          "line": 451,
                          "column": 53
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13890,
                        "end": 13911,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 27
                          },
                          "end": {
                            "line": 451,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 13890,
                          "end": 13905,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 27
                            },
                            "end": {
                              "line": 451,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13890,
                            "end": 13901,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 27
                              },
                              "end": {
                                "line": 451,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13890,
                              "end": 13894,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 27
                                },
                                "end": {
                                  "line": 451,
                                  "column": 31
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13895,
                              "end": 13901,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 32
                                },
                                "end": {
                                  "line": 451,
                                  "column": 38
                                }
                              },
                              "name": "bounds"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13902,
                            "end": 13905,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 39
                              },
                              "end": {
                                "line": 451,
                                "column": 42
                              }
                            },
                            "name": "box"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13906,
                          "end": 13911,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 43
                            },
                            "end": {
                              "line": 451,
                              "column": 48
                            }
                          },
                          "name": "union"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 13912,
                          "end": 13915,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 49
                            },
                            "end": {
                              "line": 451,
                              "column": 52
                            }
                          },
                          "name": "box"
                        }
                      ]
                    },
                    "alternate": {
                      "type": "CallExpression",
                      "start": 13919,
                      "end": 13955,
                      "loc": {
                        "start": {
                          "line": 451,
                          "column": 56
                        },
                        "end": {
                          "line": 451,
                          "column": 92
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13919,
                        "end": 13949,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 56
                          },
                          "end": {
                            "line": 451,
                            "column": 86
                          }
                        },
                        "object": {
                          "type": "NewExpression",
                          "start": 13919,
                          "end": 13935,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 56
                            },
                            "end": {
                              "line": 451,
                              "column": 72
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 13923,
                            "end": 13933,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 60
                              },
                              "end": {
                                "line": 451,
                                "column": 70
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13923,
                              "end": 13928,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 60
                                },
                                "end": {
                                  "line": 451,
                                  "column": 65
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13929,
                              "end": 13933,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 66
                                },
                                "end": {
                                  "line": 451,
                                  "column": 70
                                }
                              },
                              "name": "Box3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13936,
                          "end": 13949,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 73
                            },
                            "end": {
                              "line": 451,
                              "column": 86
                            }
                          },
                          "name": "setFromObject"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 13950,
                          "end": 13954,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 87
                            },
                            "end": {
                              "line": 451,
                              "column": 91
                            }
                          }
                        }
                      ]
                    }
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 13958,
                "end": 14015,
                "loc": {
                  "start": {
                    "line": 452,
                    "column": 1
                  },
                  "end": {
                    "line": 452,
                    "column": 58
                  }
                },
                "expression": {
                  "type": "AssignmentExpression",
                  "start": 13958,
                  "end": 14014,
                  "loc": {
                    "start": {
                      "line": 452,
                      "column": 1
                    },
                    "end": {
                      "line": 452,
                      "column": 57
                    }
                  },
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "start": 13958,
                    "end": 13976,
                    "loc": {
                      "start": {
                        "line": 452,
                        "column": 1
                      },
                      "end": {
                        "line": 452,
                        "column": 19
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 13958,
                      "end": 13969,
                      "loc": {
                        "start": {
                          "line": 452,
                          "column": 1
                        },
                        "end": {
                          "line": 452,
                          "column": 12
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 13958,
                        "end": 13962,
                        "loc": {
                          "start": {
                            "line": 452,
                            "column": 1
                          },
                          "end": {
                            "line": 452,
                            "column": 5
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13963,
                        "end": 13969,
                        "loc": {
                          "start": {
                            "line": 452,
                            "column": 6
                          },
                          "end": {
                            "line": 452,
                            "column": 12
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13970,
                      "end": 13976,
                      "loc": {
                        "start": {
                          "line": 452,
                          "column": 13
                        },
                        "end": {
                          "line": 452,
                          "column": 19
                        }
                      },
                      "name": "sphere"
                    },
                    "computed": false
                  },
                  "right": {
                    "type": "CallExpression",
                    "start": 13979,
                    "end": 14014,
                    "loc": {
                      "start": {
                        "line": 452,
                        "column": 22
                      },
                      "end": {
                        "line": 452,
                        "column": 57
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 13979,
                      "end": 14012,
                      "loc": {
                        "start": {
                          "line": 452,
                          "column": 22
                        },
                        "end": {
                          "line": 452,
                          "column": 55
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 13979,
                        "end": 13994,
                        "loc": {
                          "start": {
                            "line": 452,
                            "column": 22
                          },
                          "end": {
                            "line": 452,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 13979,
                          "end": 13990,
                          "loc": {
                            "start": {
                              "line": 452,
                              "column": 22
                            },
                            "end": {
                              "line": 452,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13979,
                            "end": 13983,
                            "loc": {
                              "start": {
                                "line": 452,
                                "column": 22
                              },
                              "end": {
                                "line": 452,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13984,
                            "end": 13990,
                            "loc": {
                              "start": {
                                "line": 452,
                                "column": 27
                              },
                              "end": {
                                "line": 452,
                                "column": 33
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13991,
                          "end": 13994,
                          "loc": {
                            "start": {
                              "line": 452,
                              "column": 34
                            },
                            "end": {
                              "line": 452,
                              "column": 37
                            }
                          },
                          "name": "box"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13995,
                        "end": 14012,
                        "loc": {
                          "start": {
                            "line": 452,
                            "column": 38
                          },
                          "end": {
                            "line": 452,
                            "column": 55
                          }
                        },
                        "name": "getBoundingSphere"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 14017,
                "end": 14090,
                "loc": {
                  "start": {
                    "line": 453,
                    "column": 1
                  },
                  "end": {
                    "line": 453,
                    "column": 74
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 14017,
                  "end": 14089,
                  "loc": {
                    "start": {
                      "line": 453,
                      "column": 1
                    },
                    "end": {
                      "line": 453,
                      "column": 73
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 14017,
                    "end": 14026,
                    "loc": {
                      "start": {
                        "line": 453,
                        "column": 1
                      },
                      "end": {
                        "line": 453,
                        "column": 10
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 14017,
                      "end": 14021,
                      "loc": {
                        "start": {
                          "line": 453,
                          "column": 1
                        },
                        "end": {
                          "line": 453,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14022,
                      "end": 14026,
                      "loc": {
                        "start": {
                          "line": 453,
                          "column": 6
                        },
                        "end": {
                          "line": 453,
                          "column": 10
                        }
                      },
                      "name": "view"
                    },
                    "computed": false
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 14030,
                    "end": 14089,
                    "loc": {
                      "start": {
                        "line": 453,
                        "column": 14
                      },
                      "end": {
                        "line": 453,
                        "column": 73
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14030,
                      "end": 14052,
                      "loc": {
                        "start": {
                          "line": 453,
                          "column": 14
                        },
                        "end": {
                          "line": 453,
                          "column": 36
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 14030,
                        "end": 14039,
                        "loc": {
                          "start": {
                            "line": 453,
                            "column": 14
                          },
                          "end": {
                            "line": 453,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 14030,
                          "end": 14034,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 14
                            },
                            "end": {
                              "line": 453,
                              "column": 18
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14035,
                          "end": 14039,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 19
                            },
                            "end": {
                              "line": 453,
                              "column": 23
                            }
                          },
                          "name": "view"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14040,
                        "end": 14052,
                        "loc": {
                          "start": {
                            "line": 453,
                            "column": 24
                          },
                          "end": {
                            "line": 453,
                            "column": 36
                          }
                        },
                        "name": "updateBounds"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "ConditionalExpression",
                        "start": 14053,
                        "end": 14088,
                        "loc": {
                          "start": {
                            "line": 453,
                            "column": 37
                          },
                          "end": {
                            "line": 453,
                            "column": 72
                          }
                        },
                        "test": {
                          "type": "UnaryExpression",
                          "start": 14053,
                          "end": 14058,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 37
                            },
                            "end": {
                              "line": 453,
                              "column": 42
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "UnaryExpression",
                            "start": 14054,
                            "end": 14058,
                            "loc": {
                              "start": {
                                "line": 453,
                                "column": 38
                              },
                              "end": {
                                "line": 453,
                                "column": 42
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 14055,
                              "end": 14058,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 39
                                },
                                "end": {
                                  "line": 453,
                                  "column": 42
                                }
                              },
                              "name": "box"
                            }
                          }
                        },
                        "consequent": {
                          "type": "MemberExpression",
                          "start": 14061,
                          "end": 14076,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 45
                            },
                            "end": {
                              "line": 453,
                              "column": 60
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 14061,
                            "end": 14072,
                            "loc": {
                              "start": {
                                "line": 453,
                                "column": 45
                              },
                              "end": {
                                "line": 453,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14061,
                              "end": 14065,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 45
                                },
                                "end": {
                                  "line": 453,
                                  "column": 49
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14066,
                              "end": 14072,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 50
                                },
                                "end": {
                                  "line": 453,
                                  "column": 56
                                }
                              },
                              "name": "bounds"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14073,
                            "end": 14076,
                            "loc": {
                              "start": {
                                "line": 453,
                                "column": 57
                              },
                              "end": {
                                "line": 453,
                                "column": 60
                              }
                            },
                            "name": "box"
                          },
                          "computed": false
                        },
                        "alternate": {
                          "type": "Identifier",
                          "start": 14079,
                          "end": 14088,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 63
                            },
                            "end": {
                              "line": 453,
                              "column": 72
                            }
                          },
                          "name": "undefined"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "start": 14092,
                "end": 14104,
                "loc": {
                  "start": {
                    "line": 454,
                    "column": 1
                  },
                  "end": {
                    "line": 454,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 14099,
                  "end": 14103,
                  "loc": {
                    "start": {
                      "line": 454,
                      "column": 8
                    },
                    "end": {
                      "line": 454,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14108,
      "end": 14262,
      "loc": {
        "start": {
          "line": 457,
          "column": 0
        },
        "end": {
          "line": 460,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14108,
        "end": 14262,
        "loc": {
          "start": {
            "line": 457,
            "column": 0
          },
          "end": {
            "line": 460,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14108,
          "end": 14142,
          "loc": {
            "start": {
              "line": 457,
              "column": 0
            },
            "end": {
              "line": 457,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14108,
            "end": 14132,
            "loc": {
              "start": {
                "line": 457,
                "column": 0
              },
              "end": {
                "line": 457,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14108,
              "end": 14122,
              "loc": {
                "start": {
                  "line": 457,
                  "column": 0
                },
                "end": {
                  "line": 457,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14108,
                "end": 14113,
                "loc": {
                  "start": {
                    "line": 457,
                    "column": 0
                  },
                  "end": {
                    "line": 457,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14114,
                "end": 14122,
                "loc": {
                  "start": {
                    "line": 457,
                    "column": 6
                  },
                  "end": {
                    "line": 457,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14123,
              "end": 14132,
              "loc": {
                "start": {
                  "line": 457,
                  "column": 15
                },
                "end": {
                  "line": 457,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14133,
            "end": 14142,
            "loc": {
              "start": {
                "line": 457,
                "column": 25
              },
              "end": {
                "line": 457,
                "column": 34
              }
            },
            "name": "getCenter"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14145,
          "end": 14262,
          "loc": {
            "start": {
              "line": 457,
              "column": 37
            },
            "end": {
              "line": 460,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14133,
            "end": 14142,
            "loc": {
              "start": {
                "line": 457,
                "column": 25
              },
              "end": {
                "line": 457,
                "column": 34
              }
            },
            "name": "getCenter"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 14154,
              "end": 14159,
              "loc": {
                "start": {
                  "line": 457,
                  "column": 46
                },
                "end": {
                  "line": 457,
                  "column": 51
                }
              },
              "name": "force"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 14161,
            "end": 14262,
            "loc": {
              "start": {
                "line": 457,
                "column": 53
              },
              "end": {
                "line": 460,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 14167,
                "end": 14214,
                "loc": {
                  "start": {
                    "line": 458,
                    "column": 4
                  },
                  "end": {
                    "line": 458,
                    "column": 51
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 14171,
                  "end": 14192,
                  "loc": {
                    "start": {
                      "line": 458,
                      "column": 8
                    },
                    "end": {
                      "line": 458,
                      "column": 29
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 14171,
                    "end": 14176,
                    "loc": {
                      "start": {
                        "line": 458,
                        "column": 8
                      },
                      "end": {
                        "line": 458,
                        "column": 13
                      }
                    },
                    "name": "force"
                  },
                  "operator": "||",
                  "right": {
                    "type": "UnaryExpression",
                    "start": 14180,
                    "end": 14192,
                    "loc": {
                      "start": {
                        "line": 458,
                        "column": 17
                      },
                      "end": {
                        "line": 458,
                        "column": 29
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 14181,
                      "end": 14192,
                      "loc": {
                        "start": {
                          "line": 458,
                          "column": 18
                        },
                        "end": {
                          "line": 458,
                          "column": 29
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14181,
                        "end": 14185,
                        "loc": {
                          "start": {
                            "line": 458,
                            "column": 18
                          },
                          "end": {
                            "line": 458,
                            "column": 22
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14186,
                        "end": 14192,
                        "loc": {
                          "start": {
                            "line": 458,
                            "column": 23
                          },
                          "end": {
                            "line": 458,
                            "column": 29
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 14194,
                  "end": 14214,
                  "loc": {
                    "start": {
                      "line": 458,
                      "column": 31
                    },
                    "end": {
                      "line": 458,
                      "column": 51
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 14194,
                    "end": 14213,
                    "loc": {
                      "start": {
                        "line": 458,
                        "column": 31
                      },
                      "end": {
                        "line": 458,
                        "column": 50
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14194,
                      "end": 14211,
                      "loc": {
                        "start": {
                          "line": 458,
                          "column": 31
                        },
                        "end": {
                          "line": 458,
                          "column": 48
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14194,
                        "end": 14198,
                        "loc": {
                          "start": {
                            "line": 458,
                            "column": 31
                          },
                          "end": {
                            "line": 458,
                            "column": 35
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14199,
                        "end": 14211,
                        "loc": {
                          "start": {
                            "line": 458,
                            "column": 36
                          },
                          "end": {
                            "line": 458,
                            "column": 48
                          }
                        },
                        "name": "updateBounds"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "ReturnStatement",
                "start": 14219,
                "end": 14260,
                "loc": {
                  "start": {
                    "line": 459,
                    "column": 4
                  },
                  "end": {
                    "line": 459,
                    "column": 45
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 14226,
                  "end": 14259,
                  "loc": {
                    "start": {
                      "line": 459,
                      "column": 11
                    },
                    "end": {
                      "line": 459,
                      "column": 44
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 14226,
                    "end": 14257,
                    "loc": {
                      "start": {
                        "line": 459,
                        "column": 11
                      },
                      "end": {
                        "line": 459,
                        "column": 42
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 14226,
                      "end": 14251,
                      "loc": {
                        "start": {
                          "line": 459,
                          "column": 11
                        },
                        "end": {
                          "line": 459,
                          "column": 36
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 14226,
                        "end": 14244,
                        "loc": {
                          "start": {
                            "line": 459,
                            "column": 11
                          },
                          "end": {
                            "line": 459,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 14226,
                          "end": 14237,
                          "loc": {
                            "start": {
                              "line": 459,
                              "column": 11
                            },
                            "end": {
                              "line": 459,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14226,
                            "end": 14230,
                            "loc": {
                              "start": {
                                "line": 459,
                                "column": 11
                              },
                              "end": {
                                "line": 459,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14231,
                            "end": 14237,
                            "loc": {
                              "start": {
                                "line": 459,
                                "column": 16
                              },
                              "end": {
                                "line": 459,
                                "column": 22
                              }
                            },
                            "name": "bounds"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14238,
                          "end": 14244,
                          "loc": {
                            "start": {
                              "line": 459,
                              "column": 23
                            },
                            "end": {
                              "line": 459,
                              "column": 29
                            }
                          },
                          "name": "sphere"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14245,
                        "end": 14251,
                        "loc": {
                          "start": {
                            "line": 459,
                            "column": 30
                          },
                          "end": {
                            "line": 459,
                            "column": 36
                          }
                        },
                        "name": "center"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14252,
                      "end": 14257,
                      "loc": {
                        "start": {
                          "line": 459,
                          "column": 37
                        },
                        "end": {
                          "line": 459,
                          "column": 42
                        }
                      },
                      "name": "clone"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14264,
      "end": 14410,
      "loc": {
        "start": {
          "line": 462,
          "column": 0
        },
        "end": {
          "line": 465,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14264,
        "end": 14410,
        "loc": {
          "start": {
            "line": 462,
            "column": 0
          },
          "end": {
            "line": 465,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14264,
          "end": 14298,
          "loc": {
            "start": {
              "line": 462,
              "column": 0
            },
            "end": {
              "line": 462,
              "column": 34
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14264,
            "end": 14288,
            "loc": {
              "start": {
                "line": 462,
                "column": 0
              },
              "end": {
                "line": 462,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14264,
              "end": 14278,
              "loc": {
                "start": {
                  "line": 462,
                  "column": 0
                },
                "end": {
                  "line": 462,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14264,
                "end": 14269,
                "loc": {
                  "start": {
                    "line": 462,
                    "column": 0
                  },
                  "end": {
                    "line": 462,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14270,
                "end": 14278,
                "loc": {
                  "start": {
                    "line": 462,
                    "column": 6
                  },
                  "end": {
                    "line": 462,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14279,
              "end": 14288,
              "loc": {
                "start": {
                  "line": 462,
                  "column": 15
                },
                "end": {
                  "line": 462,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14289,
            "end": 14298,
            "loc": {
              "start": {
                "line": 462,
                "column": 25
              },
              "end": {
                "line": 462,
                "column": 34
              }
            },
            "name": "getRadius"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14301,
          "end": 14410,
          "loc": {
            "start": {
              "line": 462,
              "column": 37
            },
            "end": {
              "line": 465,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14289,
            "end": 14298,
            "loc": {
              "start": {
                "line": 462,
                "column": 25
              },
              "end": {
                "line": 462,
                "column": 34
              }
            },
            "name": "getRadius"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 14310,
              "end": 14315,
              "loc": {
                "start": {
                  "line": 462,
                  "column": 46
                },
                "end": {
                  "line": 462,
                  "column": 51
                }
              },
              "name": "force"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 14317,
            "end": 14410,
            "loc": {
              "start": {
                "line": 462,
                "column": 53
              },
              "end": {
                "line": 465,
                "column": 1
              }
            },
            "body": [
              {
                "type": "IfStatement",
                "start": 14323,
                "end": 14370,
                "loc": {
                  "start": {
                    "line": 463,
                    "column": 4
                  },
                  "end": {
                    "line": 463,
                    "column": 51
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 14327,
                  "end": 14348,
                  "loc": {
                    "start": {
                      "line": 463,
                      "column": 8
                    },
                    "end": {
                      "line": 463,
                      "column": 29
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 14327,
                    "end": 14332,
                    "loc": {
                      "start": {
                        "line": 463,
                        "column": 8
                      },
                      "end": {
                        "line": 463,
                        "column": 13
                      }
                    },
                    "name": "force"
                  },
                  "operator": "||",
                  "right": {
                    "type": "UnaryExpression",
                    "start": 14336,
                    "end": 14348,
                    "loc": {
                      "start": {
                        "line": 463,
                        "column": 17
                      },
                      "end": {
                        "line": 463,
                        "column": 29
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "MemberExpression",
                      "start": 14337,
                      "end": 14348,
                      "loc": {
                        "start": {
                          "line": 463,
                          "column": 18
                        },
                        "end": {
                          "line": 463,
                          "column": 29
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14337,
                        "end": 14341,
                        "loc": {
                          "start": {
                            "line": 463,
                            "column": 18
                          },
                          "end": {
                            "line": 463,
                            "column": 22
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14342,
                        "end": 14348,
                        "loc": {
                          "start": {
                            "line": 463,
                            "column": 23
                          },
                          "end": {
                            "line": 463,
                            "column": 29
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    }
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 14350,
                  "end": 14370,
                  "loc": {
                    "start": {
                      "line": 463,
                      "column": 31
                    },
                    "end": {
                      "line": 463,
                      "column": 51
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 14350,
                    "end": 14369,
                    "loc": {
                      "start": {
                        "line": 463,
                        "column": 31
                      },
                      "end": {
                        "line": 463,
                        "column": 50
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14350,
                      "end": 14367,
                      "loc": {
                        "start": {
                          "line": 463,
                          "column": 31
                        },
                        "end": {
                          "line": 463,
                          "column": 48
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14350,
                        "end": 14354,
                        "loc": {
                          "start": {
                            "line": 463,
                            "column": 31
                          },
                          "end": {
                            "line": 463,
                            "column": 35
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14355,
                        "end": 14367,
                        "loc": {
                          "start": {
                            "line": 463,
                            "column": 36
                          },
                          "end": {
                            "line": 463,
                            "column": 48
                          }
                        },
                        "name": "updateBounds"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "ReturnStatement",
                "start": 14375,
                "end": 14408,
                "loc": {
                  "start": {
                    "line": 464,
                    "column": 4
                  },
                  "end": {
                    "line": 464,
                    "column": 37
                  }
                },
                "argument": {
                  "type": "MemberExpression",
                  "start": 14382,
                  "end": 14407,
                  "loc": {
                    "start": {
                      "line": 464,
                      "column": 11
                    },
                    "end": {
                      "line": 464,
                      "column": 36
                    }
                  },
                  "object": {
                    "type": "MemberExpression",
                    "start": 14382,
                    "end": 14400,
                    "loc": {
                      "start": {
                        "line": 464,
                        "column": 11
                      },
                      "end": {
                        "line": 464,
                        "column": 29
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 14382,
                      "end": 14393,
                      "loc": {
                        "start": {
                          "line": 464,
                          "column": 11
                        },
                        "end": {
                          "line": 464,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 14382,
                        "end": 14386,
                        "loc": {
                          "start": {
                            "line": 464,
                            "column": 11
                          },
                          "end": {
                            "line": 464,
                            "column": 15
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14387,
                        "end": 14393,
                        "loc": {
                          "start": {
                            "line": 464,
                            "column": 16
                          },
                          "end": {
                            "line": 464,
                            "column": 22
                          }
                        },
                        "name": "bounds"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 14394,
                      "end": 14400,
                      "loc": {
                        "start": {
                          "line": 464,
                          "column": 23
                        },
                        "end": {
                          "line": 464,
                          "column": 29
                        }
                      },
                      "name": "sphere"
                    },
                    "computed": false
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14401,
                    "end": 14407,
                    "loc": {
                      "start": {
                        "line": 464,
                        "column": 30
                      },
                      "end": {
                        "line": 464,
                        "column": 36
                      }
                    },
                    "name": "radius"
                  },
                  "computed": false
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14412,
      "end": 14983,
      "loc": {
        "start": {
          "line": 467,
          "column": 0
        },
        "end": {
          "line": 480,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14412,
        "end": 14983,
        "loc": {
          "start": {
            "line": 467,
            "column": 0
          },
          "end": {
            "line": 480,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14412,
          "end": 14451,
          "loc": {
            "start": {
              "line": 467,
              "column": 0
            },
            "end": {
              "line": 467,
              "column": 39
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14412,
            "end": 14436,
            "loc": {
              "start": {
                "line": 467,
                "column": 0
              },
              "end": {
                "line": 467,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14412,
              "end": 14426,
              "loc": {
                "start": {
                  "line": 467,
                  "column": 0
                },
                "end": {
                  "line": 467,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14412,
                "end": 14417,
                "loc": {
                  "start": {
                    "line": 467,
                    "column": 0
                  },
                  "end": {
                    "line": 467,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14418,
                "end": 14426,
                "loc": {
                  "start": {
                    "line": 467,
                    "column": 6
                  },
                  "end": {
                    "line": 467,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 14427,
              "end": 14436,
              "loc": {
                "start": {
                  "line": 467,
                  "column": 15
                },
                "end": {
                  "line": 467,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 14437,
            "end": 14451,
            "loc": {
              "start": {
                "line": 467,
                "column": 25
              },
              "end": {
                "line": 467,
                "column": 39
              }
            },
            "name": "centerGeometry"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 14454,
          "end": 14983,
          "loc": {
            "start": {
              "line": 467,
              "column": 42
            },
            "end": {
              "line": 480,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 14437,
            "end": 14451,
            "loc": {
              "start": {
                "line": 467,
                "column": 25
              },
              "end": {
                "line": 467,
                "column": 39
              }
            },
            "name": "centerGeometry"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "AssignmentPattern",
              "start": 14463,
              "end": 14492,
              "loc": {
                "start": {
                  "line": 467,
                  "column": 51
                },
                "end": {
                  "line": 467,
                  "column": 80
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 14463,
                "end": 14469,
                "loc": {
                  "start": {
                    "line": 467,
                    "column": 51
                  },
                  "end": {
                    "line": 467,
                    "column": 57
                  }
                },
                "name": "center"
              },
              "right": {
                "type": "CallExpression",
                "start": 14472,
                "end": 14492,
                "loc": {
                  "start": {
                    "line": 467,
                    "column": 60
                  },
                  "end": {
                    "line": 467,
                    "column": 80
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 14472,
                  "end": 14486,
                  "loc": {
                    "start": {
                      "line": 467,
                      "column": 60
                    },
                    "end": {
                      "line": 467,
                      "column": 74
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 14472,
                    "end": 14476,
                    "loc": {
                      "start": {
                        "line": 467,
                        "column": 60
                      },
                      "end": {
                        "line": 467,
                        "column": 64
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14477,
                    "end": 14486,
                    "loc": {
                      "start": {
                        "line": 467,
                        "column": 65
                      },
                      "end": {
                        "line": 467,
                        "column": 74
                      }
                    },
                    "name": "getCenter"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 14487,
                    "end": 14491,
                    "loc": {
                      "start": {
                        "line": 467,
                        "column": 75
                      },
                      "end": {
                        "line": 467,
                        "column": 79
                      }
                    },
                    "value": true,
                    "rawValue": true,
                    "raw": "true"
                  }
                ]
              }
            },
            {
              "type": "AssignmentPattern",
              "start": 14494,
              "end": 14512,
              "loc": {
                "start": {
                  "line": 467,
                  "column": 82
                },
                "end": {
                  "line": 467,
                  "column": 100
                }
              },
              "operator": "=",
              "left": {
                "type": "Identifier",
                "start": 14494,
                "end": 14505,
                "loc": {
                  "start": {
                    "line": 467,
                    "column": 82
                  },
                  "end": {
                    "line": 467,
                    "column": 93
                  }
                },
                "name": "setPosition"
              },
              "right": {
                "type": "Literal",
                "start": 14508,
                "end": 14512,
                "loc": {
                  "start": {
                    "line": 467,
                    "column": 96
                  },
                  "end": {
                    "line": 467,
                    "column": 100
                  }
                },
                "value": true,
                "rawValue": true,
                "raw": "true"
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 14514,
            "end": 14983,
            "loc": {
              "start": {
                "line": 467,
                "column": 102
              },
              "end": {
                "line": 480,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ExpressionStatement",
                "start": 14517,
                "end": 14559,
                "loc": {
                  "start": {
                    "line": 468,
                    "column": 1
                  },
                  "end": {
                    "line": 468,
                    "column": 43
                  }
                },
                "expression": {
                  "type": "LogicalExpression",
                  "start": 14517,
                  "end": 14558,
                  "loc": {
                    "start": {
                      "line": 468,
                      "column": 1
                    },
                    "end": {
                      "line": 468,
                      "column": 42
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 14517,
                    "end": 14528,
                    "loc": {
                      "start": {
                        "line": 468,
                        "column": 1
                      },
                      "end": {
                        "line": 468,
                        "column": 12
                      }
                    },
                    "name": "setPosition"
                  },
                  "operator": "&&",
                  "right": {
                    "type": "CallExpression",
                    "start": 14532,
                    "end": 14558,
                    "loc": {
                      "start": {
                        "line": 468,
                        "column": 16
                      },
                      "end": {
                        "line": 468,
                        "column": 42
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14532,
                      "end": 14550,
                      "loc": {
                        "start": {
                          "line": 468,
                          "column": 16
                        },
                        "end": {
                          "line": 468,
                          "column": 34
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 14532,
                        "end": 14545,
                        "loc": {
                          "start": {
                            "line": 468,
                            "column": 16
                          },
                          "end": {
                            "line": 468,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 14532,
                          "end": 14536,
                          "loc": {
                            "start": {
                              "line": 468,
                              "column": 16
                            },
                            "end": {
                              "line": 468,
                              "column": 20
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14537,
                          "end": 14545,
                          "loc": {
                            "start": {
                              "line": 468,
                              "column": 21
                            },
                            "end": {
                              "line": 468,
                              "column": 29
                            }
                          },
                          "name": "position"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14546,
                        "end": 14550,
                        "loc": {
                          "start": {
                            "line": 468,
                            "column": 30
                          },
                          "end": {
                            "line": 468,
                            "column": 34
                          }
                        },
                        "name": "copy"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 14551,
                        "end": 14557,
                        "loc": {
                          "start": {
                            "line": 468,
                            "column": 35
                          },
                          "end": {
                            "line": 468,
                            "column": 41
                          }
                        },
                        "name": "center"
                      }
                    ]
                  }
                }
              },
              {
                "type": "IfStatement",
                "start": 14565,
                "end": 14883,
                "loc": {
                  "start": {
                    "line": 470,
                    "column": 4
                  },
                  "end": {
                    "line": 474,
                    "column": 5
                  }
                },
                "test": {
                  "type": "LogicalExpression",
                  "start": 14569,
                  "end": 14678,
                  "loc": {
                    "start": {
                      "line": 470,
                      "column": 8
                    },
                    "end": {
                      "line": 470,
                      "column": 117
                    }
                  },
                  "left": {
                    "type": "UnaryExpression",
                    "start": 14569,
                    "end": 14584,
                    "loc": {
                      "start": {
                        "line": 470,
                        "column": 8
                      },
                      "end": {
                        "line": 470,
                        "column": 23
                      }
                    },
                    "operator": "!",
                    "prefix": true,
                    "argument": {
                      "type": "UnaryExpression",
                      "start": 14570,
                      "end": 14584,
                      "loc": {
                        "start": {
                          "line": 470,
                          "column": 9
                        },
                        "end": {
                          "line": 470,
                          "column": 23
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 14571,
                        "end": 14584,
                        "loc": {
                          "start": {
                            "line": 470,
                            "column": 10
                          },
                          "end": {
                            "line": 470,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 14571,
                          "end": 14575,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 10
                            },
                            "end": {
                              "line": 470,
                              "column": 14
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14576,
                          "end": 14584,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 15
                            },
                            "end": {
                              "line": 470,
                              "column": 23
                            }
                          },
                          "name": "geometry"
                        },
                        "computed": false
                      }
                    }
                  },
                  "operator": "&&",
                  "right": {
                    "type": "LogicalExpression",
                    "start": 14589,
                    "end": 14677,
                    "loc": {
                      "start": {
                        "line": 470,
                        "column": 28
                      },
                      "end": {
                        "line": 470,
                        "column": 116
                      }
                    },
                    "left": {
                      "type": "BinaryExpression",
                      "start": 14589,
                      "end": 14628,
                      "loc": {
                        "start": {
                          "line": 470,
                          "column": 28
                        },
                        "end": {
                          "line": 470,
                          "column": 67
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 14589,
                        "end": 14602,
                        "loc": {
                          "start": {
                            "line": 470,
                            "column": 28
                          },
                          "end": {
                            "line": 470,
                            "column": 41
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 14589,
                          "end": 14593,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 28
                            },
                            "end": {
                              "line": 470,
                              "column": 32
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14594,
                          "end": 14602,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 33
                            },
                            "end": {
                              "line": 470,
                              "column": 41
                            }
                          },
                          "name": "geometry"
                        },
                        "computed": false
                      },
                      "operator": "instanceof",
                      "right": {
                        "type": "MemberExpression",
                        "start": 14614,
                        "end": 14628,
                        "loc": {
                          "start": {
                            "line": 470,
                            "column": 53
                          },
                          "end": {
                            "line": 470,
                            "column": 67
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 14614,
                          "end": 14619,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 53
                            },
                            "end": {
                              "line": 470,
                              "column": 58
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14620,
                          "end": 14628,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 59
                            },
                            "end": {
                              "line": 470,
                              "column": 67
                            }
                          },
                          "name": "Geometry"
                        },
                        "computed": false
                      }
                    },
                    "operator": "||",
                    "right": {
                      "type": "BinaryExpression",
                      "start": 14632,
                      "end": 14677,
                      "loc": {
                        "start": {
                          "line": 470,
                          "column": 71
                        },
                        "end": {
                          "line": 470,
                          "column": 116
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 14632,
                        "end": 14645,
                        "loc": {
                          "start": {
                            "line": 470,
                            "column": 71
                          },
                          "end": {
                            "line": 470,
                            "column": 84
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 14632,
                          "end": 14636,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 71
                            },
                            "end": {
                              "line": 470,
                              "column": 75
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14637,
                          "end": 14645,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 76
                            },
                            "end": {
                              "line": 470,
                              "column": 84
                            }
                          },
                          "name": "geometry"
                        },
                        "computed": false
                      },
                      "operator": "instanceof",
                      "right": {
                        "type": "MemberExpression",
                        "start": 14657,
                        "end": 14677,
                        "loc": {
                          "start": {
                            "line": 470,
                            "column": 96
                          },
                          "end": {
                            "line": 470,
                            "column": 116
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 14657,
                          "end": 14662,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 96
                            },
                            "end": {
                              "line": 470,
                              "column": 101
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14663,
                          "end": 14677,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 102
                            },
                            "end": {
                              "line": 470,
                              "column": 116
                            }
                          },
                          "name": "BufferGeometry"
                        },
                        "computed": false
                      }
                    },
                    "parenthesizedExpression": true
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 14680,
                  "end": 14883,
                  "loc": {
                    "start": {
                      "line": 470,
                      "column": 119
                    },
                    "end": {
                      "line": 474,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 14690,
                      "end": 14786,
                      "loc": {
                        "start": {
                          "line": 471,
                          "column": 8
                        },
                        "end": {
                          "line": 471,
                          "column": 104
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14690,
                        "end": 14785,
                        "loc": {
                          "start": {
                            "line": 471,
                            "column": 8
                          },
                          "end": {
                            "line": 471,
                            "column": 103
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14690,
                          "end": 14715,
                          "loc": {
                            "start": {
                              "line": 471,
                              "column": 8
                            },
                            "end": {
                              "line": 471,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 14690,
                            "end": 14703,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 8
                              },
                              "end": {
                                "line": 471,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14690,
                              "end": 14694,
                              "loc": {
                                "start": {
                                  "line": 471,
                                  "column": 8
                                },
                                "end": {
                                  "line": 471,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14695,
                              "end": 14703,
                              "loc": {
                                "start": {
                                  "line": 471,
                                  "column": 13
                                },
                                "end": {
                                  "line": 471,
                                  "column": 21
                                }
                              },
                              "name": "geometry"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14704,
                            "end": 14715,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 22
                              },
                              "end": {
                                "line": 471,
                                "column": 33
                              }
                            },
                            "name": "applyMatrix"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 14716,
                            "end": 14784,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 34
                              },
                              "end": {
                                "line": 471,
                                "column": 102
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14716,
                              "end": 14751,
                              "loc": {
                                "start": {
                                  "line": 471,
                                  "column": 34
                                },
                                "end": {
                                  "line": 471,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "NewExpression",
                                "start": 14716,
                                "end": 14735,
                                "loc": {
                                  "start": {
                                    "line": 471,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 471,
                                    "column": 53
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 14720,
                                  "end": 14733,
                                  "loc": {
                                    "start": {
                                      "line": 471,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 471,
                                      "column": 51
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14720,
                                    "end": 14725,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 43
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14726,
                                    "end": 14733,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 51
                                      }
                                    },
                                    "name": "Matrix4"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14736,
                                "end": 14751,
                                "loc": {
                                  "start": {
                                    "line": 471,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 471,
                                    "column": 69
                                  }
                                },
                                "name": "makeTranslation"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "UnaryExpression",
                                "start": 14752,
                                "end": 14761,
                                "loc": {
                                  "start": {
                                    "line": 471,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 471,
                                    "column": 79
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "MemberExpression",
                                  "start": 14753,
                                  "end": 14761,
                                  "loc": {
                                    "start": {
                                      "line": 471,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 471,
                                      "column": 79
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14753,
                                    "end": 14759,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 77
                                      }
                                    },
                                    "name": "center"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14760,
                                    "end": 14761,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 78
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 79
                                      }
                                    },
                                    "name": "x"
                                  },
                                  "computed": false
                                }
                              },
                              {
                                "type": "UnaryExpression",
                                "start": 14763,
                                "end": 14772,
                                "loc": {
                                  "start": {
                                    "line": 471,
                                    "column": 81
                                  },
                                  "end": {
                                    "line": 471,
                                    "column": 90
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "MemberExpression",
                                  "start": 14764,
                                  "end": 14772,
                                  "loc": {
                                    "start": {
                                      "line": 471,
                                      "column": 82
                                    },
                                    "end": {
                                      "line": 471,
                                      "column": 90
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14764,
                                    "end": 14770,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 82
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 88
                                      }
                                    },
                                    "name": "center"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14771,
                                    "end": 14772,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 89
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 90
                                      }
                                    },
                                    "name": "y"
                                  },
                                  "computed": false
                                }
                              },
                              {
                                "type": "UnaryExpression",
                                "start": 14774,
                                "end": 14783,
                                "loc": {
                                  "start": {
                                    "line": 471,
                                    "column": 92
                                  },
                                  "end": {
                                    "line": 471,
                                    "column": 101
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "MemberExpression",
                                  "start": 14775,
                                  "end": 14783,
                                  "loc": {
                                    "start": {
                                      "line": 471,
                                      "column": 93
                                    },
                                    "end": {
                                      "line": 471,
                                      "column": 101
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14775,
                                    "end": 14781,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 93
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 99
                                      }
                                    },
                                    "name": "center"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14782,
                                    "end": 14783,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 100
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 101
                                      }
                                    },
                                    "name": "z"
                                  },
                                  "computed": false
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14795,
                      "end": 14830,
                      "loc": {
                        "start": {
                          "line": 472,
                          "column": 8
                        },
                        "end": {
                          "line": 472,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14795,
                        "end": 14829,
                        "loc": {
                          "start": {
                            "line": 472,
                            "column": 8
                          },
                          "end": {
                            "line": 472,
                            "column": 42
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14795,
                          "end": 14827,
                          "loc": {
                            "start": {
                              "line": 472,
                              "column": 8
                            },
                            "end": {
                              "line": 472,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 14795,
                            "end": 14808,
                            "loc": {
                              "start": {
                                "line": 472,
                                "column": 8
                              },
                              "end": {
                                "line": 472,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14795,
                              "end": 14799,
                              "loc": {
                                "start": {
                                  "line": 472,
                                  "column": 8
                                },
                                "end": {
                                  "line": 472,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14800,
                              "end": 14808,
                              "loc": {
                                "start": {
                                  "line": 472,
                                  "column": 13
                                },
                                "end": {
                                  "line": 472,
                                  "column": 21
                                }
                              },
                              "name": "geometry"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14809,
                            "end": 14827,
                            "loc": {
                              "start": {
                                "line": 472,
                                "column": 22
                              },
                              "end": {
                                "line": 472,
                                "column": 40
                              }
                            },
                            "name": "computeBoundingBox"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14839,
                      "end": 14877,
                      "loc": {
                        "start": {
                          "line": 473,
                          "column": 8
                        },
                        "end": {
                          "line": 473,
                          "column": 46
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14839,
                        "end": 14876,
                        "loc": {
                          "start": {
                            "line": 473,
                            "column": 8
                          },
                          "end": {
                            "line": 473,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14839,
                          "end": 14874,
                          "loc": {
                            "start": {
                              "line": 473,
                              "column": 8
                            },
                            "end": {
                              "line": 473,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 14839,
                            "end": 14852,
                            "loc": {
                              "start": {
                                "line": 473,
                                "column": 8
                              },
                              "end": {
                                "line": 473,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14839,
                              "end": 14843,
                              "loc": {
                                "start": {
                                  "line": 473,
                                  "column": 8
                                },
                                "end": {
                                  "line": 473,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14844,
                              "end": 14852,
                              "loc": {
                                "start": {
                                  "line": 473,
                                  "column": 13
                                },
                                "end": {
                                  "line": 473,
                                  "column": 21
                                }
                              },
                              "name": "geometry"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14853,
                            "end": 14874,
                            "loc": {
                              "start": {
                                "line": 473,
                                "column": 22
                              },
                              "end": {
                                "line": 473,
                                "column": 43
                              }
                            },
                            "name": "computeBoundingSphere"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "ForOfStatement",
                "start": 14889,
                "end": 14966,
                "loc": {
                  "start": {
                    "line": 476,
                    "column": 4
                  },
                  "end": {
                    "line": 477,
                    "column": 44
                  }
                },
                "left": {
                  "type": "VariableDeclaration",
                  "start": 14894,
                  "end": 14903,
                  "loc": {
                    "start": {
                      "line": 476,
                      "column": 9
                    },
                    "end": {
                      "line": 476,
                      "column": 18
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 14898,
                      "end": 14903,
                      "loc": {
                        "start": {
                          "line": 476,
                          "column": 13
                        },
                        "end": {
                          "line": 476,
                          "column": 18
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 14898,
                        "end": 14903,
                        "loc": {
                          "start": {
                            "line": 476,
                            "column": 13
                          },
                          "end": {
                            "line": 476,
                            "column": 18
                          }
                        },
                        "name": "child"
                      },
                      "init": null
                    }
                  ],
                  "kind": "let"
                },
                "right": {
                  "type": "MemberExpression",
                  "start": 14907,
                  "end": 14920,
                  "loc": {
                    "start": {
                      "line": 476,
                      "column": 22
                    },
                    "end": {
                      "line": 476,
                      "column": 35
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 14907,
                    "end": 14911,
                    "loc": {
                      "start": {
                        "line": 476,
                        "column": 22
                      },
                      "end": {
                        "line": 476,
                        "column": 26
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14912,
                    "end": 14920,
                    "loc": {
                      "start": {
                        "line": 476,
                        "column": 27
                      },
                      "end": {
                        "line": 476,
                        "column": 35
                      }
                    },
                    "name": "children"
                  },
                  "computed": false
                },
                "body": {
                  "type": "ExpressionStatement",
                  "start": 14930,
                  "end": 14966,
                  "loc": {
                    "start": {
                      "line": 477,
                      "column": 8
                    },
                    "end": {
                      "line": 477,
                      "column": 44
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 14930,
                    "end": 14965,
                    "loc": {
                      "start": {
                        "line": 477,
                        "column": 8
                      },
                      "end": {
                        "line": 477,
                        "column": 43
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14930,
                      "end": 14950,
                      "loc": {
                        "start": {
                          "line": 477,
                          "column": 8
                        },
                        "end": {
                          "line": 477,
                          "column": 28
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 14930,
                        "end": 14935,
                        "loc": {
                          "start": {
                            "line": 477,
                            "column": 8
                          },
                          "end": {
                            "line": 477,
                            "column": 13
                          }
                        },
                        "name": "child"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14936,
                        "end": 14950,
                        "loc": {
                          "start": {
                            "line": 477,
                            "column": 14
                          },
                          "end": {
                            "line": 477,
                            "column": 28
                          }
                        },
                        "name": "centerGeometry"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 14951,
                        "end": 14957,
                        "loc": {
                          "start": {
                            "line": 477,
                            "column": 29
                          },
                          "end": {
                            "line": 477,
                            "column": 35
                          }
                        },
                        "name": "center"
                      },
                      {
                        "type": "Literal",
                        "start": 14959,
                        "end": 14964,
                        "loc": {
                          "start": {
                            "line": 477,
                            "column": 37
                          },
                          "end": {
                            "line": 477,
                            "column": 42
                          }
                        },
                        "value": false,
                        "rawValue": false,
                        "raw": "false"
                      }
                    ]
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "start": 14969,
                "end": 14981,
                "loc": {
                  "start": {
                    "line": 479,
                    "column": 1
                  },
                  "end": {
                    "line": 479,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 14976,
                  "end": 14980,
                  "loc": {
                    "start": {
                      "line": 479,
                      "column": 8
                    },
                    "end": {
                      "line": 479,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 14985,
      "end": 15120,
      "loc": {
        "start": {
          "line": 482,
          "column": 0
        },
        "end": {
          "line": 486,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14985,
        "end": 15120,
        "loc": {
          "start": {
            "line": 482,
            "column": 0
          },
          "end": {
            "line": 486,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14985,
          "end": 15029,
          "loc": {
            "start": {
              "line": 482,
              "column": 0
            },
            "end": {
              "line": 482,
              "column": 44
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14985,
            "end": 15009,
            "loc": {
              "start": {
                "line": 482,
                "column": 0
              },
              "end": {
                "line": 482,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 14985,
              "end": 14999,
              "loc": {
                "start": {
                  "line": 482,
                  "column": 0
                },
                "end": {
                  "line": 482,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 14985,
                "end": 14990,
                "loc": {
                  "start": {
                    "line": 482,
                    "column": 0
                  },
                  "end": {
                    "line": 482,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 14991,
                "end": 14999,
                "loc": {
                  "start": {
                    "line": 482,
                    "column": 6
                  },
                  "end": {
                    "line": 482,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15000,
              "end": 15009,
              "loc": {
                "start": {
                  "line": 482,
                  "column": 15
                },
                "end": {
                  "line": 482,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15010,
            "end": 15029,
            "loc": {
              "start": {
                "line": 482,
                "column": 25
              },
              "end": {
                "line": 482,
                "column": 44
              }
            },
            "name": "centerChildGeometry"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15032,
          "end": 15120,
          "loc": {
            "start": {
              "line": 482,
              "column": 47
            },
            "end": {
              "line": 486,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15010,
            "end": 15029,
            "loc": {
              "start": {
                "line": 482,
                "column": 25
              },
              "end": {
                "line": 482,
                "column": 44
              }
            },
            "name": "centerChildGeometry"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [],
          "body": {
            "type": "BlockStatement",
            "start": 15043,
            "end": 15120,
            "loc": {
              "start": {
                "line": 482,
                "column": 58
              },
              "end": {
                "line": 486,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ForOfStatement",
                "start": 15046,
                "end": 15104,
                "loc": {
                  "start": {
                    "line": 483,
                    "column": 1
                  },
                  "end": {
                    "line": 484,
                    "column": 25
                  }
                },
                "left": {
                  "type": "VariableDeclaration",
                  "start": 15051,
                  "end": 15060,
                  "loc": {
                    "start": {
                      "line": 483,
                      "column": 6
                    },
                    "end": {
                      "line": 483,
                      "column": 15
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 15055,
                      "end": 15060,
                      "loc": {
                        "start": {
                          "line": 483,
                          "column": 10
                        },
                        "end": {
                          "line": 483,
                          "column": 15
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 15055,
                        "end": 15060,
                        "loc": {
                          "start": {
                            "line": 483,
                            "column": 10
                          },
                          "end": {
                            "line": 483,
                            "column": 15
                          }
                        },
                        "name": "child"
                      },
                      "init": null
                    }
                  ],
                  "kind": "let"
                },
                "right": {
                  "type": "MemberExpression",
                  "start": 15064,
                  "end": 15077,
                  "loc": {
                    "start": {
                      "line": 483,
                      "column": 19
                    },
                    "end": {
                      "line": 483,
                      "column": 32
                    }
                  },
                  "object": {
                    "type": "ThisExpression",
                    "start": 15064,
                    "end": 15068,
                    "loc": {
                      "start": {
                        "line": 483,
                        "column": 19
                      },
                      "end": {
                        "line": 483,
                        "column": 23
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 15069,
                    "end": 15077,
                    "loc": {
                      "start": {
                        "line": 483,
                        "column": 24
                      },
                      "end": {
                        "line": 483,
                        "column": 32
                      }
                    },
                    "name": "children"
                  },
                  "computed": false
                },
                "body": {
                  "type": "ExpressionStatement",
                  "start": 15081,
                  "end": 15104,
                  "loc": {
                    "start": {
                      "line": 484,
                      "column": 2
                    },
                    "end": {
                      "line": 484,
                      "column": 25
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 15081,
                    "end": 15103,
                    "loc": {
                      "start": {
                        "line": 484,
                        "column": 2
                      },
                      "end": {
                        "line": 484,
                        "column": 24
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 15081,
                      "end": 15101,
                      "loc": {
                        "start": {
                          "line": 484,
                          "column": 2
                        },
                        "end": {
                          "line": 484,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 15081,
                        "end": 15086,
                        "loc": {
                          "start": {
                            "line": 484,
                            "column": 2
                          },
                          "end": {
                            "line": 484,
                            "column": 7
                          }
                        },
                        "name": "child"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 15087,
                        "end": 15101,
                        "loc": {
                          "start": {
                            "line": 484,
                            "column": 8
                          },
                          "end": {
                            "line": 484,
                            "column": 22
                          }
                        },
                        "name": "centerGeometry"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "start": 15106,
                "end": 15118,
                "loc": {
                  "start": {
                    "line": 485,
                    "column": 1
                  },
                  "end": {
                    "line": 485,
                    "column": 13
                  }
                },
                "argument": {
                  "type": "ThisExpression",
                  "start": 15113,
                  "end": 15117,
                  "loc": {
                    "start": {
                      "line": 485,
                      "column": 8
                    },
                    "end": {
                      "line": 485,
                      "column": 12
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15122,
      "end": 15230,
      "loc": {
        "start": {
          "line": 488,
          "column": 0
        },
        "end": {
          "line": 490,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15122,
        "end": 15230,
        "loc": {
          "start": {
            "line": 488,
            "column": 0
          },
          "end": {
            "line": 490,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15122,
          "end": 15163,
          "loc": {
            "start": {
              "line": 488,
              "column": 0
            },
            "end": {
              "line": 488,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15122,
            "end": 15146,
            "loc": {
              "start": {
                "line": 488,
                "column": 0
              },
              "end": {
                "line": 488,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15122,
              "end": 15136,
              "loc": {
                "start": {
                  "line": 488,
                  "column": 0
                },
                "end": {
                  "line": 488,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15122,
                "end": 15127,
                "loc": {
                  "start": {
                    "line": 488,
                    "column": 0
                  },
                  "end": {
                    "line": 488,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15128,
                "end": 15136,
                "loc": {
                  "start": {
                    "line": 488,
                    "column": 6
                  },
                  "end": {
                    "line": 488,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15137,
              "end": 15146,
              "loc": {
                "start": {
                  "line": 488,
                  "column": 15
                },
                "end": {
                  "line": 488,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15147,
            "end": 15163,
            "loc": {
              "start": {
                "line": 488,
                "column": 25
              },
              "end": {
                "line": 488,
                "column": 41
              }
            },
            "name": "addEventListener"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15166,
          "end": 15230,
          "loc": {
            "start": {
              "line": 488,
              "column": 44
            },
            "end": {
              "line": 490,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15147,
            "end": 15163,
            "loc": {
              "start": {
                "line": 488,
                "column": 25
              },
              "end": {
                "line": 488,
                "column": 41
              }
            },
            "name": "addEventListener"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 15175,
              "end": 15179,
              "loc": {
                "start": {
                  "line": 488,
                  "column": 53
                },
                "end": {
                  "line": 488,
                  "column": 57
                }
              },
              "name": "type"
            },
            {
              "type": "Identifier",
              "start": 15181,
              "end": 15189,
              "loc": {
                "start": {
                  "line": 488,
                  "column": 59
                },
                "end": {
                  "line": 488,
                  "column": 67
                }
              },
              "name": "listener"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15191,
            "end": 15230,
            "loc": {
              "start": {
                "line": 488,
                "column": 69
              },
              "end": {
                "line": 490,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 15197,
                "end": 15228,
                "loc": {
                  "start": {
                    "line": 489,
                    "column": 4
                  },
                  "end": {
                    "line": 489,
                    "column": 35
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 15204,
                  "end": 15227,
                  "loc": {
                    "start": {
                      "line": 489,
                      "column": 11
                    },
                    "end": {
                      "line": 489,
                      "column": 34
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 15204,
                    "end": 15211,
                    "loc": {
                      "start": {
                        "line": 489,
                        "column": 11
                      },
                      "end": {
                        "line": 489,
                        "column": 18
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 15204,
                      "end": 15208,
                      "loc": {
                        "start": {
                          "line": 489,
                          "column": 11
                        },
                        "end": {
                          "line": 489,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 15209,
                      "end": 15211,
                      "loc": {
                        "start": {
                          "line": 489,
                          "column": 16
                        },
                        "end": {
                          "line": 489,
                          "column": 18
                        }
                      },
                      "name": "on"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 15212,
                      "end": 15216,
                      "loc": {
                        "start": {
                          "line": 489,
                          "column": 19
                        },
                        "end": {
                          "line": 489,
                          "column": 23
                        }
                      },
                      "name": "type"
                    },
                    {
                      "type": "Identifier",
                      "start": 15218,
                      "end": 15226,
                      "loc": {
                        "start": {
                          "line": 489,
                          "column": 25
                        },
                        "end": {
                          "line": 489,
                          "column": 33
                        }
                      },
                      "name": "listener"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15232,
      "end": 15349,
      "loc": {
        "start": {
          "line": 492,
          "column": 0
        },
        "end": {
          "line": 494,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15232,
        "end": 15349,
        "loc": {
          "start": {
            "line": 492,
            "column": 0
          },
          "end": {
            "line": 494,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15232,
          "end": 15273,
          "loc": {
            "start": {
              "line": 492,
              "column": 0
            },
            "end": {
              "line": 492,
              "column": 41
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15232,
            "end": 15256,
            "loc": {
              "start": {
                "line": 492,
                "column": 0
              },
              "end": {
                "line": 492,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15232,
              "end": 15246,
              "loc": {
                "start": {
                  "line": 492,
                  "column": 0
                },
                "end": {
                  "line": 492,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15232,
                "end": 15237,
                "loc": {
                  "start": {
                    "line": 492,
                    "column": 0
                  },
                  "end": {
                    "line": 492,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15238,
                "end": 15246,
                "loc": {
                  "start": {
                    "line": 492,
                    "column": 6
                  },
                  "end": {
                    "line": 492,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15247,
              "end": 15256,
              "loc": {
                "start": {
                  "line": 492,
                  "column": 15
                },
                "end": {
                  "line": 492,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15257,
            "end": 15273,
            "loc": {
              "start": {
                "line": 492,
                "column": 25
              },
              "end": {
                "line": 492,
                "column": 41
              }
            },
            "name": "hasEventListener"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15276,
          "end": 15349,
          "loc": {
            "start": {
              "line": 492,
              "column": 44
            },
            "end": {
              "line": 494,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15257,
            "end": 15273,
            "loc": {
              "start": {
                "line": 492,
                "column": 25
              },
              "end": {
                "line": 492,
                "column": 41
              }
            },
            "name": "hasEventListener"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 15285,
              "end": 15289,
              "loc": {
                "start": {
                  "line": 492,
                  "column": 53
                },
                "end": {
                  "line": 492,
                  "column": 57
                }
              },
              "name": "type"
            },
            {
              "type": "Identifier",
              "start": 15291,
              "end": 15299,
              "loc": {
                "start": {
                  "line": 492,
                  "column": 59
                },
                "end": {
                  "line": 492,
                  "column": 67
                }
              },
              "name": "listener"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15301,
            "end": 15349,
            "loc": {
              "start": {
                "line": 492,
                "column": 69
              },
              "end": {
                "line": 494,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 15307,
                "end": 15347,
                "loc": {
                  "start": {
                    "line": 493,
                    "column": 4
                  },
                  "end": {
                    "line": 493,
                    "column": 44
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 15314,
                  "end": 15346,
                  "loc": {
                    "start": {
                      "line": 493,
                      "column": 11
                    },
                    "end": {
                      "line": 493,
                      "column": 43
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 15314,
                    "end": 15330,
                    "loc": {
                      "start": {
                        "line": 493,
                        "column": 11
                      },
                      "end": {
                        "line": 493,
                        "column": 27
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 15314,
                      "end": 15318,
                      "loc": {
                        "start": {
                          "line": 493,
                          "column": 11
                        },
                        "end": {
                          "line": 493,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 15319,
                      "end": 15330,
                      "loc": {
                        "start": {
                          "line": 493,
                          "column": 16
                        },
                        "end": {
                          "line": 493,
                          "column": 27
                        }
                      },
                      "name": "hasListener"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 15331,
                      "end": 15335,
                      "loc": {
                        "start": {
                          "line": 493,
                          "column": 28
                        },
                        "end": {
                          "line": 493,
                          "column": 32
                        }
                      },
                      "name": "type"
                    },
                    {
                      "type": "Identifier",
                      "start": 15337,
                      "end": 15345,
                      "loc": {
                        "start": {
                          "line": 493,
                          "column": 34
                        },
                        "end": {
                          "line": 493,
                          "column": 42
                        }
                      },
                      "name": "listener"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15351,
      "end": 15474,
      "loc": {
        "start": {
          "line": 496,
          "column": 0
        },
        "end": {
          "line": 498,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15351,
        "end": 15474,
        "loc": {
          "start": {
            "line": 496,
            "column": 0
          },
          "end": {
            "line": 498,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15351,
          "end": 15395,
          "loc": {
            "start": {
              "line": 496,
              "column": 0
            },
            "end": {
              "line": 496,
              "column": 44
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15351,
            "end": 15375,
            "loc": {
              "start": {
                "line": 496,
                "column": 0
              },
              "end": {
                "line": 496,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15351,
              "end": 15365,
              "loc": {
                "start": {
                  "line": 496,
                  "column": 0
                },
                "end": {
                  "line": 496,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15351,
                "end": 15356,
                "loc": {
                  "start": {
                    "line": 496,
                    "column": 0
                  },
                  "end": {
                    "line": 496,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15357,
                "end": 15365,
                "loc": {
                  "start": {
                    "line": 496,
                    "column": 6
                  },
                  "end": {
                    "line": 496,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15366,
              "end": 15375,
              "loc": {
                "start": {
                  "line": 496,
                  "column": 15
                },
                "end": {
                  "line": 496,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15376,
            "end": 15395,
            "loc": {
              "start": {
                "line": 496,
                "column": 25
              },
              "end": {
                "line": 496,
                "column": 44
              }
            },
            "name": "removeEventListener"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15398,
          "end": 15474,
          "loc": {
            "start": {
              "line": 496,
              "column": 47
            },
            "end": {
              "line": 498,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15376,
            "end": 15395,
            "loc": {
              "start": {
                "line": 496,
                "column": 25
              },
              "end": {
                "line": 496,
                "column": 44
              }
            },
            "name": "removeEventListener"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 15407,
              "end": 15411,
              "loc": {
                "start": {
                  "line": 496,
                  "column": 56
                },
                "end": {
                  "line": 496,
                  "column": 60
                }
              },
              "name": "type"
            },
            {
              "type": "Identifier",
              "start": 15413,
              "end": 15421,
              "loc": {
                "start": {
                  "line": 496,
                  "column": 62
                },
                "end": {
                  "line": 496,
                  "column": 70
                }
              },
              "name": "listener"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15423,
            "end": 15474,
            "loc": {
              "start": {
                "line": 496,
                "column": 72
              },
              "end": {
                "line": 498,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 15429,
                "end": 15472,
                "loc": {
                  "start": {
                    "line": 497,
                    "column": 4
                  },
                  "end": {
                    "line": 497,
                    "column": 47
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 15436,
                  "end": 15471,
                  "loc": {
                    "start": {
                      "line": 497,
                      "column": 11
                    },
                    "end": {
                      "line": 497,
                      "column": 46
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 15436,
                    "end": 15455,
                    "loc": {
                      "start": {
                        "line": 497,
                        "column": 11
                      },
                      "end": {
                        "line": 497,
                        "column": 30
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 15436,
                      "end": 15440,
                      "loc": {
                        "start": {
                          "line": 497,
                          "column": 11
                        },
                        "end": {
                          "line": 497,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 15441,
                      "end": 15455,
                      "loc": {
                        "start": {
                          "line": 497,
                          "column": 16
                        },
                        "end": {
                          "line": 497,
                          "column": 30
                        }
                      },
                      "name": "removeListener"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 15456,
                      "end": 15460,
                      "loc": {
                        "start": {
                          "line": 497,
                          "column": 31
                        },
                        "end": {
                          "line": 497,
                          "column": 35
                        }
                      },
                      "name": "type"
                    },
                    {
                      "type": "Identifier",
                      "start": 15462,
                      "end": 15470,
                      "loc": {
                        "start": {
                          "line": 497,
                          "column": 37
                        },
                        "end": {
                          "line": 497,
                          "column": 45
                        }
                      },
                      "name": "listener"
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 15476,
      "end": 15583,
      "loc": {
        "start": {
          "line": 500,
          "column": 0
        },
        "end": {
          "line": 502,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 15476,
        "end": 15583,
        "loc": {
          "start": {
            "line": 500,
            "column": 0
          },
          "end": {
            "line": 502,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 15476,
          "end": 15514,
          "loc": {
            "start": {
              "line": 500,
              "column": 0
            },
            "end": {
              "line": 500,
              "column": 38
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 15476,
            "end": 15500,
            "loc": {
              "start": {
                "line": 500,
                "column": 0
              },
              "end": {
                "line": 500,
                "column": 24
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 15476,
              "end": 15490,
              "loc": {
                "start": {
                  "line": 500,
                  "column": 0
                },
                "end": {
                  "line": 500,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 15476,
                "end": 15481,
                "loc": {
                  "start": {
                    "line": 500,
                    "column": 0
                  },
                  "end": {
                    "line": 500,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 15482,
                "end": 15490,
                "loc": {
                  "start": {
                    "line": 500,
                    "column": 6
                  },
                  "end": {
                    "line": 500,
                    "column": 14
                  }
                },
                "name": "Object3D"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 15491,
              "end": 15500,
              "loc": {
                "start": {
                  "line": 500,
                  "column": 15
                },
                "end": {
                  "line": 500,
                  "column": 24
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 15501,
            "end": 15514,
            "loc": {
              "start": {
                "line": 500,
                "column": 25
              },
              "end": {
                "line": 500,
                "column": 38
              }
            },
            "name": "dispatchEvent"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 15517,
          "end": 15583,
          "loc": {
            "start": {
              "line": 500,
              "column": 41
            },
            "end": {
              "line": 502,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 15501,
            "end": 15514,
            "loc": {
              "start": {
                "line": 500,
                "column": 25
              },
              "end": {
                "line": 500,
                "column": 38
              }
            },
            "name": "dispatchEvent"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 15526,
              "end": 15531,
              "loc": {
                "start": {
                  "line": 500,
                  "column": 50
                },
                "end": {
                  "line": 500,
                  "column": 55
                }
              },
              "name": "event"
            },
            {
              "type": "RestElement",
              "start": 15533,
              "end": 15540,
              "loc": {
                "start": {
                  "line": 500,
                  "column": 57
                },
                "end": {
                  "line": 500,
                  "column": 64
                }
              },
              "argument": {
                "type": "Identifier",
                "start": 15536,
                "end": 15540,
                "loc": {
                  "start": {
                    "line": 500,
                    "column": 60
                  },
                  "end": {
                    "line": 500,
                    "column": 64
                  }
                },
                "name": "args"
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 15542,
            "end": 15583,
            "loc": {
              "start": {
                "line": 500,
                "column": 66
              },
              "end": {
                "line": 502,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ReturnStatement",
                "start": 15548,
                "end": 15581,
                "loc": {
                  "start": {
                    "line": 501,
                    "column": 4
                  },
                  "end": {
                    "line": 501,
                    "column": 37
                  }
                },
                "argument": {
                  "type": "CallExpression",
                  "start": 15555,
                  "end": 15580,
                  "loc": {
                    "start": {
                      "line": 501,
                      "column": 11
                    },
                    "end": {
                      "line": 501,
                      "column": 36
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 15555,
                    "end": 15564,
                    "loc": {
                      "start": {
                        "line": 501,
                        "column": 11
                      },
                      "end": {
                        "line": 501,
                        "column": 20
                      }
                    },
                    "object": {
                      "type": "ThisExpression",
                      "start": 15555,
                      "end": 15559,
                      "loc": {
                        "start": {
                          "line": 501,
                          "column": 11
                        },
                        "end": {
                          "line": 501,
                          "column": 15
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 15560,
                      "end": 15564,
                      "loc": {
                        "start": {
                          "line": 501,
                          "column": 16
                        },
                        "end": {
                          "line": 501,
                          "column": 20
                        }
                      },
                      "name": "emit"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 15565,
                      "end": 15570,
                      "loc": {
                        "start": {
                          "line": 501,
                          "column": 21
                        },
                        "end": {
                          "line": 501,
                          "column": 26
                        }
                      },
                      "name": "event"
                    },
                    {
                      "type": "SpreadElement",
                      "start": 15572,
                      "end": 15579,
                      "loc": {
                        "start": {
                          "line": 501,
                          "column": 28
                        },
                        "end": {
                          "line": 501,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 15575,
                        "end": 15579,
                        "loc": {
                          "start": {
                            "line": 501,
                            "column": 31
                          },
                          "end": {
                            "line": 501,
                            "column": 35
                          }
                        },
                        "name": "args"
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
      }
    }
  ]
}