{
  "type": "Program",
  "start": 0,
  "end": 11590,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 264,
      "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": "ExportDefaultDeclaration",
      "start": 28,
      "end": 3577,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 93,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 43,
        "end": 3577,
        "loc": {
          "start": {
            "line": 3,
            "column": 15
          },
          "end": {
            "line": 93,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 49,
          "end": 58,
          "loc": {
            "start": {
              "line": 3,
              "column": 21
            },
            "end": {
              "line": 3,
              "column": 30
            }
          },
          "name": "Raycaster"
        },
        "superClass": {
          "type": "MemberExpression",
          "start": 67,
          "end": 82,
          "loc": {
            "start": {
              "line": 3,
              "column": 39
            },
            "end": {
              "line": 3,
              "column": 54
            }
          },
          "object": {
            "type": "Identifier",
            "start": 67,
            "end": 72,
            "loc": {
              "start": {
                "line": 3,
                "column": 39
              },
              "end": {
                "line": 3,
                "column": 44
              }
            },
            "name": "THREE"
          },
          "property": {
            "type": "Identifier",
            "start": 73,
            "end": 82,
            "loc": {
              "start": {
                "line": 3,
                "column": 45
              },
              "end": {
                "line": 3,
                "column": 54
              }
            },
            "name": "Raycaster"
          },
          "computed": false
        },
        "body": {
          "type": "ClassBody",
          "start": 83,
          "end": 3577,
          "loc": {
            "start": {
              "line": 3,
              "column": 55
            },
            "end": {
              "line": 93,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 89,
              "end": 937,
              "loc": {
                "start": {
                  "line": 4,
                  "column": 4
                },
                "end": {
                  "line": 24,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 89,
                "end": 100,
                "loc": {
                  "start": {
                    "line": 4,
                    "column": 4
                  },
                  "end": {
                    "line": 4,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 100,
                "end": 937,
                "loc": {
                  "start": {
                    "line": 4,
                    "column": 15
                  },
                  "end": {
                    "line": 24,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 101,
                    "end": 112,
                    "loc": {
                      "start": {
                        "line": 4,
                        "column": 16
                      },
                      "end": {
                        "line": 4,
                        "column": 27
                      }
                    },
                    "name": "interaction"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 114,
                    "end": 167,
                    "loc": {
                      "start": {
                        "line": 4,
                        "column": 29
                      },
                      "end": {
                        "line": 4,
                        "column": 82
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 114,
                      "end": 121,
                      "loc": {
                        "start": {
                          "line": 4,
                          "column": 29
                        },
                        "end": {
                          "line": 4,
                          "column": 36
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 124,
                      "end": 167,
                      "loc": {
                        "start": {
                          "line": 4,
                          "column": 39
                        },
                        "end": {
                          "line": 4,
                          "column": 82
                        }
                      },
                      "properties": [
                        {
                          "type": "Property",
                          "start": 126,
                          "end": 165,
                          "loc": {
                            "start": {
                              "line": 4,
                              "column": 41
                            },
                            "end": {
                              "line": 4,
                              "column": 80
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 126,
                            "end": 134,
                            "loc": {
                              "start": {
                                "line": 4,
                                "column": 41
                              },
                              "end": {
                                "line": 4,
                                "column": 49
                              }
                            },
                            "name": "approach"
                          },
                          "value": {
                            "type": "MemberExpression",
                            "start": 136,
                            "end": 165,
                            "loc": {
                              "start": {
                                "line": 4,
                                "column": 51
                              },
                              "end": {
                                "line": 4,
                                "column": 80
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 136,
                              "end": 154,
                              "loc": {
                                "start": {
                                  "line": 4,
                                  "column": 51
                                },
                                "end": {
                                  "line": 4,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 136,
                                "end": 145,
                                "loc": {
                                  "start": {
                                    "line": 4,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 4,
                                    "column": 60
                                  }
                                },
                                "name": "Raycaster"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 146,
                                "end": 154,
                                "loc": {
                                  "start": {
                                    "line": 4,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 4,
                                    "column": 69
                                  }
                                },
                                "name": "Approach"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 155,
                              "end": 165,
                              "loc": {
                                "start": {
                                  "line": 4,
                                  "column": 70
                                },
                                "end": {
                                  "line": 4,
                                  "column": 80
                                }
                              },
                              "name": "FirstMatch"
                            },
                            "computed": false
                          },
                          "kind": "init"
                        }
                      ]
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 169,
                  "end": 937,
                  "loc": {
                    "start": {
                      "line": 4,
                      "column": 84
                    },
                    "end": {
                      "line": 24,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 179,
                      "end": 187,
                      "loc": {
                        "start": {
                          "line": 5,
                          "column": 8
                        },
                        "end": {
                          "line": 5,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 179,
                        "end": 186,
                        "loc": {
                          "start": {
                            "line": 5,
                            "column": 8
                          },
                          "end": {
                            "line": 5,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 179,
                          "end": 184,
                          "loc": {
                            "start": {
                              "line": 5,
                              "column": 8
                            },
                            "end": {
                              "line": 5,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 196,
                      "end": 227,
                      "loc": {
                        "start": {
                          "line": 6,
                          "column": 8
                        },
                        "end": {
                          "line": 6,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 196,
                        "end": 226,
                        "loc": {
                          "start": {
                            "line": 6,
                            "column": 8
                          },
                          "end": {
                            "line": 6,
                            "column": 38
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 196,
                          "end": 212,
                          "loc": {
                            "start": {
                              "line": 6,
                              "column": 8
                            },
                            "end": {
                              "line": 6,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 196,
                            "end": 200,
                            "loc": {
                              "start": {
                                "line": 6,
                                "column": 8
                              },
                              "end": {
                                "line": 6,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 201,
                            "end": 212,
                            "loc": {
                              "start": {
                                "line": 6,
                                "column": 13
                              },
                              "end": {
                                "line": 6,
                                "column": 24
                              }
                            },
                            "name": "interaction"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 215,
                          "end": 226,
                          "loc": {
                            "start": {
                              "line": 6,
                              "column": 27
                            },
                            "end": {
                              "line": 6,
                              "column": 38
                            }
                          },
                          "name": "interaction"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 236,
                      "end": 265,
                      "loc": {
                        "start": {
                          "line": 7,
                          "column": 8
                        },
                        "end": {
                          "line": 7,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 236,
                        "end": 264,
                        "loc": {
                          "start": {
                            "line": 7,
                            "column": 8
                          },
                          "end": {
                            "line": 7,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 236,
                          "end": 245,
                          "loc": {
                            "start": {
                              "line": 7,
                              "column": 8
                            },
                            "end": {
                              "line": 7,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 236,
                            "end": 240,
                            "loc": {
                              "start": {
                                "line": 7,
                                "column": 8
                              },
                              "end": {
                                "line": 7,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 241,
                            "end": 245,
                            "loc": {
                              "start": {
                                "line": 7,
                                "column": 13
                              },
                              "end": {
                                "line": 7,
                                "column": 17
                              }
                            },
                            "name": "view"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 248,
                          "end": 264,
                          "loc": {
                            "start": {
                              "line": 7,
                              "column": 20
                            },
                            "end": {
                              "line": 7,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 248,
                            "end": 259,
                            "loc": {
                              "start": {
                                "line": 7,
                                "column": 20
                              },
                              "end": {
                                "line": 7,
                                "column": 31
                              }
                            },
                            "name": "interaction"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 260,
                            "end": 264,
                            "loc": {
                              "start": {
                                "line": 7,
                                "column": 32
                              },
                              "end": {
                                "line": 7,
                                "column": 36
                              }
                            },
                            "name": "view"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 275,
                      "end": 317,
                      "loc": {
                        "start": {
                          "line": 9,
                          "column": 8
                        },
                        "end": {
                          "line": 9,
                          "column": 50
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 275,
                        "end": 316,
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 8
                          },
                          "end": {
                            "line": 9,
                            "column": 49
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 275,
                          "end": 294,
                          "loc": {
                            "start": {
                              "line": 9,
                              "column": 8
                            },
                            "end": {
                              "line": 9,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 275,
                            "end": 279,
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 8
                              },
                              "end": {
                                "line": 9,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 280,
                            "end": 294,
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 13
                              },
                              "end": {
                                "line": 9,
                                "column": 27
                              }
                            },
                            "name": "_inverseMatrix"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 297,
                          "end": 316,
                          "loc": {
                            "start": {
                              "line": 9,
                              "column": 30
                            },
                            "end": {
                              "line": 9,
                              "column": 49
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 301,
                            "end": 314,
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 34
                              },
                              "end": {
                                "line": 9,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 301,
                              "end": 306,
                              "loc": {
                                "start": {
                                  "line": 9,
                                  "column": 34
                                },
                                "end": {
                                  "line": 9,
                                  "column": 39
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 307,
                              "end": 314,
                              "loc": {
                                "start": {
                                  "line": 9,
                                  "column": 40
                                },
                                "end": {
                                  "line": 9,
                                  "column": 47
                                }
                              },
                              "name": "Matrix4"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 326,
                      "end": 354,
                      "loc": {
                        "start": {
                          "line": 10,
                          "column": 8
                        },
                        "end": {
                          "line": 10,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 326,
                        "end": 353,
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 8
                          },
                          "end": {
                            "line": 10,
                            "column": 35
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 326,
                          "end": 335,
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 8
                            },
                            "end": {
                              "line": 10,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 326,
                            "end": 330,
                            "loc": {
                              "start": {
                                "line": 10,
                                "column": 8
                              },
                              "end": {
                                "line": 10,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 331,
                            "end": 335,
                            "loc": {
                              "start": {
                                "line": 10,
                                "column": 13
                              },
                              "end": {
                                "line": 10,
                                "column": 17
                              }
                            },
                            "name": "_ray"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 338,
                          "end": 353,
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 20
                            },
                            "end": {
                              "line": 10,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 342,
                            "end": 351,
                            "loc": {
                              "start": {
                                "line": 10,
                                "column": 24
                              },
                              "end": {
                                "line": 10,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 342,
                              "end": 347,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 24
                                },
                                "end": {
                                  "line": 10,
                                  "column": 29
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 348,
                              "end": 351,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 30
                                },
                                "end": {
                                  "line": 10,
                                  "column": 33
                                }
                              },
                              "name": "Ray"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 363,
                      "end": 397,
                      "loc": {
                        "start": {
                          "line": 11,
                          "column": 8
                        },
                        "end": {
                          "line": 11,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 363,
                        "end": 396,
                        "loc": {
                          "start": {
                            "line": 11,
                            "column": 8
                          },
                          "end": {
                            "line": 11,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 363,
                          "end": 375,
                          "loc": {
                            "start": {
                              "line": 11,
                              "column": 8
                            },
                            "end": {
                              "line": 11,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 363,
                            "end": 367,
                            "loc": {
                              "start": {
                                "line": 11,
                                "column": 8
                              },
                              "end": {
                                "line": 11,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 368,
                            "end": 375,
                            "loc": {
                              "start": {
                                "line": 11,
                                "column": 13
                              },
                              "end": {
                                "line": 11,
                                "column": 20
                              }
                            },
                            "name": "_sphere"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 378,
                          "end": 396,
                          "loc": {
                            "start": {
                              "line": 11,
                              "column": 23
                            },
                            "end": {
                              "line": 11,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 382,
                            "end": 394,
                            "loc": {
                              "start": {
                                "line": 11,
                                "column": 27
                              },
                              "end": {
                                "line": 11,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 382,
                              "end": 387,
                              "loc": {
                                "start": {
                                  "line": 11,
                                  "column": 27
                                },
                                "end": {
                                  "line": 11,
                                  "column": 32
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 388,
                              "end": 394,
                              "loc": {
                                "start": {
                                  "line": 11,
                                  "column": 33
                                },
                                "end": {
                                  "line": 11,
                                  "column": 39
                                }
                              },
                              "name": "Sphere"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 406,
                      "end": 437,
                      "loc": {
                        "start": {
                          "line": 12,
                          "column": 8
                        },
                        "end": {
                          "line": 12,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 406,
                        "end": 436,
                        "loc": {
                          "start": {
                            "line": 12,
                            "column": 8
                          },
                          "end": {
                            "line": 12,
                            "column": 38
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 406,
                          "end": 414,
                          "loc": {
                            "start": {
                              "line": 12,
                              "column": 8
                            },
                            "end": {
                              "line": 12,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 406,
                            "end": 410,
                            "loc": {
                              "start": {
                                "line": 12,
                                "column": 8
                              },
                              "end": {
                                "line": 12,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 411,
                            "end": 414,
                            "loc": {
                              "start": {
                                "line": 12,
                                "column": 13
                              },
                              "end": {
                                "line": 12,
                                "column": 16
                              }
                            },
                            "name": "_vA"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 417,
                          "end": 436,
                          "loc": {
                            "start": {
                              "line": 12,
                              "column": 19
                            },
                            "end": {
                              "line": 12,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 421,
                            "end": 434,
                            "loc": {
                              "start": {
                                "line": 12,
                                "column": 23
                              },
                              "end": {
                                "line": 12,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 421,
                              "end": 426,
                              "loc": {
                                "start": {
                                  "line": 12,
                                  "column": 23
                                },
                                "end": {
                                  "line": 12,
                                  "column": 28
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 427,
                              "end": 434,
                              "loc": {
                                "start": {
                                  "line": 12,
                                  "column": 29
                                },
                                "end": {
                                  "line": 12,
                                  "column": 36
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 446,
                      "end": 477,
                      "loc": {
                        "start": {
                          "line": 13,
                          "column": 8
                        },
                        "end": {
                          "line": 13,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 446,
                        "end": 476,
                        "loc": {
                          "start": {
                            "line": 13,
                            "column": 8
                          },
                          "end": {
                            "line": 13,
                            "column": 38
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 446,
                          "end": 454,
                          "loc": {
                            "start": {
                              "line": 13,
                              "column": 8
                            },
                            "end": {
                              "line": 13,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 446,
                            "end": 450,
                            "loc": {
                              "start": {
                                "line": 13,
                                "column": 8
                              },
                              "end": {
                                "line": 13,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 451,
                            "end": 454,
                            "loc": {
                              "start": {
                                "line": 13,
                                "column": 13
                              },
                              "end": {
                                "line": 13,
                                "column": 16
                              }
                            },
                            "name": "_vB"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 457,
                          "end": 476,
                          "loc": {
                            "start": {
                              "line": 13,
                              "column": 19
                            },
                            "end": {
                              "line": 13,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 461,
                            "end": 474,
                            "loc": {
                              "start": {
                                "line": 13,
                                "column": 23
                              },
                              "end": {
                                "line": 13,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 461,
                              "end": 466,
                              "loc": {
                                "start": {
                                  "line": 13,
                                  "column": 23
                                },
                                "end": {
                                  "line": 13,
                                  "column": 28
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 467,
                              "end": 474,
                              "loc": {
                                "start": {
                                  "line": 13,
                                  "column": 29
                                },
                                "end": {
                                  "line": 13,
                                  "column": 36
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 486,
                      "end": 517,
                      "loc": {
                        "start": {
                          "line": 14,
                          "column": 8
                        },
                        "end": {
                          "line": 14,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 486,
                        "end": 516,
                        "loc": {
                          "start": {
                            "line": 14,
                            "column": 8
                          },
                          "end": {
                            "line": 14,
                            "column": 38
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 486,
                          "end": 494,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 8
                            },
                            "end": {
                              "line": 14,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 486,
                            "end": 490,
                            "loc": {
                              "start": {
                                "line": 14,
                                "column": 8
                              },
                              "end": {
                                "line": 14,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 491,
                            "end": 494,
                            "loc": {
                              "start": {
                                "line": 14,
                                "column": 13
                              },
                              "end": {
                                "line": 14,
                                "column": 16
                              }
                            },
                            "name": "_vC"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 497,
                          "end": 516,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 19
                            },
                            "end": {
                              "line": 14,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 501,
                            "end": 514,
                            "loc": {
                              "start": {
                                "line": 14,
                                "column": 23
                              },
                              "end": {
                                "line": 14,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 501,
                              "end": 506,
                              "loc": {
                                "start": {
                                  "line": 14,
                                  "column": 23
                                },
                                "end": {
                                  "line": 14,
                                  "column": 28
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 507,
                              "end": 514,
                              "loc": {
                                "start": {
                                  "line": 14,
                                  "column": 29
                                },
                                "end": {
                                  "line": 14,
                                  "column": 36
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 526,
                      "end": 560,
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 8
                        },
                        "end": {
                          "line": 15,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 526,
                        "end": 559,
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 8
                          },
                          "end": {
                            "line": 15,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 526,
                          "end": 537,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 8
                            },
                            "end": {
                              "line": 15,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 526,
                            "end": 530,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 8
                              },
                              "end": {
                                "line": 15,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 531,
                            "end": 537,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 13
                              },
                              "end": {
                                "line": 15,
                                "column": 19
                              }
                            },
                            "name": "_tempA"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 540,
                          "end": 559,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 22
                            },
                            "end": {
                              "line": 15,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 544,
                            "end": 557,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 26
                              },
                              "end": {
                                "line": 15,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 544,
                              "end": 549,
                              "loc": {
                                "start": {
                                  "line": 15,
                                  "column": 26
                                },
                                "end": {
                                  "line": 15,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 550,
                              "end": 557,
                              "loc": {
                                "start": {
                                  "line": 15,
                                  "column": 32
                                },
                                "end": {
                                  "line": 15,
                                  "column": 39
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 569,
                      "end": 603,
                      "loc": {
                        "start": {
                          "line": 16,
                          "column": 8
                        },
                        "end": {
                          "line": 16,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 569,
                        "end": 602,
                        "loc": {
                          "start": {
                            "line": 16,
                            "column": 8
                          },
                          "end": {
                            "line": 16,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 569,
                          "end": 580,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 8
                            },
                            "end": {
                              "line": 16,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 569,
                            "end": 573,
                            "loc": {
                              "start": {
                                "line": 16,
                                "column": 8
                              },
                              "end": {
                                "line": 16,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 574,
                            "end": 580,
                            "loc": {
                              "start": {
                                "line": 16,
                                "column": 13
                              },
                              "end": {
                                "line": 16,
                                "column": 19
                              }
                            },
                            "name": "_tempB"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 583,
                          "end": 602,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 22
                            },
                            "end": {
                              "line": 16,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 587,
                            "end": 600,
                            "loc": {
                              "start": {
                                "line": 16,
                                "column": 26
                              },
                              "end": {
                                "line": 16,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 587,
                              "end": 592,
                              "loc": {
                                "start": {
                                  "line": 16,
                                  "column": 26
                                },
                                "end": {
                                  "line": 16,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 593,
                              "end": 600,
                              "loc": {
                                "start": {
                                  "line": 16,
                                  "column": 32
                                },
                                "end": {
                                  "line": 16,
                                  "column": 39
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 612,
                      "end": 646,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 8
                        },
                        "end": {
                          "line": 17,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 612,
                        "end": 645,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 8
                          },
                          "end": {
                            "line": 17,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 612,
                          "end": 623,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 8
                            },
                            "end": {
                              "line": 17,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 612,
                            "end": 616,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 8
                              },
                              "end": {
                                "line": 17,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 617,
                            "end": 623,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 13
                              },
                              "end": {
                                "line": 17,
                                "column": 19
                              }
                            },
                            "name": "_tempC"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 626,
                          "end": 645,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 22
                            },
                            "end": {
                              "line": 17,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 630,
                            "end": 643,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 26
                              },
                              "end": {
                                "line": 17,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 630,
                              "end": 635,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 26
                                },
                                "end": {
                                  "line": 17,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 636,
                              "end": 643,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 32
                                },
                                "end": {
                                  "line": 17,
                                  "column": 39
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 655,
                      "end": 687,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 8
                        },
                        "end": {
                          "line": 18,
                          "column": 40
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 655,
                        "end": 686,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 8
                          },
                          "end": {
                            "line": 18,
                            "column": 39
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 655,
                          "end": 664,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 8
                            },
                            "end": {
                              "line": 18,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 655,
                            "end": 659,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 8
                              },
                              "end": {
                                "line": 18,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 660,
                            "end": 664,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 13
                              },
                              "end": {
                                "line": 18,
                                "column": 17
                              }
                            },
                            "name": "_uvA"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 667,
                          "end": 686,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 20
                            },
                            "end": {
                              "line": 18,
                              "column": 39
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 671,
                            "end": 684,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 24
                              },
                              "end": {
                                "line": 18,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 671,
                              "end": 676,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 24
                                },
                                "end": {
                                  "line": 18,
                                  "column": 29
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 677,
                              "end": 684,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 30
                                },
                                "end": {
                                  "line": 18,
                                  "column": 37
                                }
                              },
                              "name": "Vector2"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 696,
                      "end": 728,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 8
                        },
                        "end": {
                          "line": 19,
                          "column": 40
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 696,
                        "end": 727,
                        "loc": {
                          "start": {
                            "line": 19,
                            "column": 8
                          },
                          "end": {
                            "line": 19,
                            "column": 39
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 696,
                          "end": 705,
                          "loc": {
                            "start": {
                              "line": 19,
                              "column": 8
                            },
                            "end": {
                              "line": 19,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 696,
                            "end": 700,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 8
                              },
                              "end": {
                                "line": 19,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 701,
                            "end": 705,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 13
                              },
                              "end": {
                                "line": 19,
                                "column": 17
                              }
                            },
                            "name": "_uvB"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 708,
                          "end": 727,
                          "loc": {
                            "start": {
                              "line": 19,
                              "column": 20
                            },
                            "end": {
                              "line": 19,
                              "column": 39
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 712,
                            "end": 725,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 24
                              },
                              "end": {
                                "line": 19,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 712,
                              "end": 717,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 24
                                },
                                "end": {
                                  "line": 19,
                                  "column": 29
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 718,
                              "end": 725,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 30
                                },
                                "end": {
                                  "line": 19,
                                  "column": 37
                                }
                              },
                              "name": "Vector2"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 737,
                      "end": 769,
                      "loc": {
                        "start": {
                          "line": 20,
                          "column": 8
                        },
                        "end": {
                          "line": 20,
                          "column": 40
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 737,
                        "end": 768,
                        "loc": {
                          "start": {
                            "line": 20,
                            "column": 8
                          },
                          "end": {
                            "line": 20,
                            "column": 39
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 737,
                          "end": 746,
                          "loc": {
                            "start": {
                              "line": 20,
                              "column": 8
                            },
                            "end": {
                              "line": 20,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 737,
                            "end": 741,
                            "loc": {
                              "start": {
                                "line": 20,
                                "column": 8
                              },
                              "end": {
                                "line": 20,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 742,
                            "end": 746,
                            "loc": {
                              "start": {
                                "line": 20,
                                "column": 13
                              },
                              "end": {
                                "line": 20,
                                "column": 17
                              }
                            },
                            "name": "_uvC"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 749,
                          "end": 768,
                          "loc": {
                            "start": {
                              "line": 20,
                              "column": 20
                            },
                            "end": {
                              "line": 20,
                              "column": 39
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 753,
                            "end": 766,
                            "loc": {
                              "start": {
                                "line": 20,
                                "column": 24
                              },
                              "end": {
                                "line": 20,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 753,
                              "end": 758,
                              "loc": {
                                "start": {
                                  "line": 20,
                                  "column": 24
                                },
                                "end": {
                                  "line": 20,
                                  "column": 29
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 759,
                              "end": 766,
                              "loc": {
                                "start": {
                                  "line": 20,
                                  "column": 30
                                },
                                "end": {
                                  "line": 20,
                                  "column": 37
                                }
                              },
                              "name": "Vector2"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 778,
                      "end": 816,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 8
                        },
                        "end": {
                          "line": 21,
                          "column": 46
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 778,
                        "end": 815,
                        "loc": {
                          "start": {
                            "line": 21,
                            "column": 8
                          },
                          "end": {
                            "line": 21,
                            "column": 45
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 778,
                          "end": 793,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 8
                            },
                            "end": {
                              "line": 21,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 778,
                            "end": 782,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 8
                              },
                              "end": {
                                "line": 21,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 783,
                            "end": 793,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 13
                              },
                              "end": {
                                "line": 21,
                                "column": 23
                              }
                            },
                            "name": "_barycoord"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 796,
                          "end": 815,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 26
                            },
                            "end": {
                              "line": 21,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 800,
                            "end": 813,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 30
                              },
                              "end": {
                                "line": 21,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 800,
                              "end": 805,
                              "loc": {
                                "start": {
                                  "line": 21,
                                  "column": 30
                                },
                                "end": {
                                  "line": 21,
                                  "column": 35
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 806,
                              "end": 813,
                              "loc": {
                                "start": {
                                  "line": 21,
                                  "column": 36
                                },
                                "end": {
                                  "line": 21,
                                  "column": 43
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 825,
                      "end": 871,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 8
                        },
                        "end": {
                          "line": 22,
                          "column": 54
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 825,
                        "end": 870,
                        "loc": {
                          "start": {
                            "line": 22,
                            "column": 8
                          },
                          "end": {
                            "line": 22,
                            "column": 53
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 825,
                          "end": 848,
                          "loc": {
                            "start": {
                              "line": 22,
                              "column": 8
                            },
                            "end": {
                              "line": 22,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 825,
                            "end": 829,
                            "loc": {
                              "start": {
                                "line": 22,
                                "column": 8
                              },
                              "end": {
                                "line": 22,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 830,
                            "end": 848,
                            "loc": {
                              "start": {
                                "line": 22,
                                "column": 13
                              },
                              "end": {
                                "line": 22,
                                "column": 31
                              }
                            },
                            "name": "_intersectionPoint"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 851,
                          "end": 870,
                          "loc": {
                            "start": {
                              "line": 22,
                              "column": 34
                            },
                            "end": {
                              "line": 22,
                              "column": 53
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 855,
                            "end": 868,
                            "loc": {
                              "start": {
                                "line": 22,
                                "column": 38
                              },
                              "end": {
                                "line": 22,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 855,
                              "end": 860,
                              "loc": {
                                "start": {
                                  "line": 22,
                                  "column": 38
                                },
                                "end": {
                                  "line": 22,
                                  "column": 43
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 861,
                              "end": 868,
                              "loc": {
                                "start": {
                                  "line": 22,
                                  "column": 44
                                },
                                "end": {
                                  "line": 22,
                                  "column": 51
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 880,
                      "end": 931,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 8
                        },
                        "end": {
                          "line": 23,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 880,
                        "end": 930,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 8
                          },
                          "end": {
                            "line": 23,
                            "column": 58
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 880,
                          "end": 908,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 8
                            },
                            "end": {
                              "line": 23,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 880,
                            "end": 884,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 8
                              },
                              "end": {
                                "line": 23,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 885,
                            "end": 908,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 13
                              },
                              "end": {
                                "line": 23,
                                "column": 36
                              }
                            },
                            "name": "_intersectionPointWorld"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 911,
                          "end": 930,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 39
                            },
                            "end": {
                              "line": 23,
                              "column": 58
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 915,
                            "end": 928,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 43
                              },
                              "end": {
                                "line": 23,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 915,
                              "end": 920,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 43
                                },
                                "end": {
                                  "line": 23,
                                  "column": 48
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 921,
                              "end": 928,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 49
                                },
                                "end": {
                                  "line": 23,
                                  "column": 56
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 943,
              "end": 1109,
              "loc": {
                "start": {
                  "line": 26,
                  "column": 4
                },
                "end": {
                  "line": 32,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 943,
                "end": 960,
                "loc": {
                  "start": {
                    "line": 26,
                    "column": 4
                  },
                  "end": {
                    "line": 26,
                    "column": 21
                  }
                },
                "name": "isActuallyVisible"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 960,
                "end": 1109,
                "loc": {
                  "start": {
                    "line": 26,
                    "column": 21
                  },
                  "end": {
                    "line": 32,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 961,
                    "end": 964,
                    "loc": {
                      "start": {
                        "line": 26,
                        "column": 22
                      },
                      "end": {
                        "line": 26,
                        "column": 25
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 966,
                  "end": 1109,
                  "loc": {
                    "start": {
                      "line": 26,
                      "column": 27
                    },
                    "end": {
                      "line": 32,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "WhileStatement",
                      "start": 976,
                      "end": 1082,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 8
                        },
                        "end": {
                          "line": 30,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 983,
                        "end": 986,
                        "loc": {
                          "start": {
                            "line": 27,
                            "column": 15
                          },
                          "end": {
                            "line": 27,
                            "column": 18
                          }
                        },
                        "name": "obj"
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 988,
                        "end": 1082,
                        "loc": {
                          "start": {
                            "line": 27,
                            "column": 20
                          },
                          "end": {
                            "line": 30,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 1002,
                            "end": 1042,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 12
                              },
                              "end": {
                                "line": 28,
                                "column": 52
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 1006,
                              "end": 1027,
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 16
                                },
                                "end": {
                                  "line": 28,
                                  "column": 37
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 1006,
                                "end": 1017,
                                "loc": {
                                  "start": {
                                    "line": 28,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 27
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1006,
                                  "end": 1009,
                                  "loc": {
                                    "start": {
                                      "line": 28,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 28,
                                      "column": 19
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1010,
                                  "end": 1017,
                                  "loc": {
                                    "start": {
                                      "line": 28,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 28,
                                      "column": 27
                                    }
                                  },
                                  "name": "visible"
                                },
                                "computed": false
                              },
                              "operator": "===",
                              "right": {
                                "type": "Literal",
                                "start": 1022,
                                "end": 1027,
                                "loc": {
                                  "start": {
                                    "line": 28,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 37
                                  }
                                },
                                "value": false,
                                "rawValue": false,
                                "raw": "false"
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 1029,
                              "end": 1042,
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 39
                                },
                                "end": {
                                  "line": 28,
                                  "column": 52
                                }
                              },
                              "argument": {
                                "type": "Literal",
                                "start": 1036,
                                "end": 1041,
                                "loc": {
                                  "start": {
                                    "line": 28,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 51
                                  }
                                },
                                "value": false,
                                "rawValue": false,
                                "raw": "false"
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 1055,
                            "end": 1072,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 12
                              },
                              "end": {
                                "line": 29,
                                "column": 29
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1055,
                              "end": 1071,
                              "loc": {
                                "start": {
                                  "line": 29,
                                  "column": 12
                                },
                                "end": {
                                  "line": 29,
                                  "column": 28
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 1055,
                                "end": 1058,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 15
                                  }
                                },
                                "name": "obj"
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 1061,
                                "end": 1071,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1061,
                                  "end": 1064,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 21
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1065,
                                  "end": 1071,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 28
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 1091,
                      "end": 1103,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 8
                        },
                        "end": {
                          "line": 31,
                          "column": 20
                        }
                      },
                      "argument": {
                        "type": "Literal",
                        "start": 1098,
                        "end": 1102,
                        "loc": {
                          "start": {
                            "line": 31,
                            "column": 15
                          },
                          "end": {
                            "line": 31,
                            "column": 19
                          }
                        },
                        "value": true,
                        "rawValue": true,
                        "raw": "true"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 1115,
              "end": 2226,
              "loc": {
                "start": {
                  "line": 34,
                  "column": 4
                },
                "end": {
                  "line": 56,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 1115,
                "end": 1126,
                "loc": {
                  "start": {
                    "line": 34,
                    "column": 4
                  },
                  "end": {
                    "line": 34,
                    "column": 15
                  }
                },
                "name": "castObjects"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 1126,
                "end": 2226,
                "loc": {
                  "start": {
                    "line": 34,
                    "column": 15
                  },
                  "end": {
                    "line": 56,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 1127,
                    "end": 1138,
                    "loc": {
                      "start": {
                        "line": 34,
                        "column": 16
                      },
                      "end": {
                        "line": 34,
                        "column": 27
                      }
                    },
                    "name": "coordinates"
                  },
                  {
                    "type": "Identifier",
                    "start": 1140,
                    "end": 1146,
                    "loc": {
                      "start": {
                        "line": 34,
                        "column": 29
                      },
                      "end": {
                        "line": 34,
                        "column": 35
                      }
                    },
                    "name": "camera"
                  },
                  {
                    "type": "Identifier",
                    "start": 1148,
                    "end": 1155,
                    "loc": {
                      "start": {
                        "line": 34,
                        "column": 37
                      },
                      "end": {
                        "line": 34,
                        "column": 44
                      }
                    },
                    "name": "objects"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 1157,
                    "end": 1172,
                    "loc": {
                      "start": {
                        "line": 34,
                        "column": 46
                      },
                      "end": {
                        "line": 34,
                        "column": 61
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 1157,
                      "end": 1167,
                      "loc": {
                        "start": {
                          "line": 34,
                          "column": 46
                        },
                        "end": {
                          "line": 34,
                          "column": 56
                        }
                      },
                      "name": "intersects"
                    },
                    "right": {
                      "type": "ArrayExpression",
                      "start": 1170,
                      "end": 1172,
                      "loc": {
                        "start": {
                          "line": 34,
                          "column": 59
                        },
                        "end": {
                          "line": 34,
                          "column": 61
                        }
                      },
                      "elements": []
                    }
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 1174,
                    "end": 1192,
                    "loc": {
                      "start": {
                        "line": 34,
                        "column": 63
                      },
                      "end": {
                        "line": 34,
                        "column": 81
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 1174,
                      "end": 1180,
                      "loc": {
                        "start": {
                          "line": 34,
                          "column": 63
                        },
                        "end": {
                          "line": 34,
                          "column": 69
                        }
                      },
                      "name": "filter"
                    },
                    "right": {
                      "type": "Identifier",
                      "start": 1183,
                      "end": 1192,
                      "loc": {
                        "start": {
                          "line": 34,
                          "column": 72
                        },
                        "end": {
                          "line": 34,
                          "column": 81
                        }
                      },
                      "name": "undefined"
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 1194,
                  "end": 2226,
                  "loc": {
                    "start": {
                      "line": 34,
                      "column": 83
                    },
                    "end": {
                      "line": 56,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 1204,
                      "end": 1244,
                      "loc": {
                        "start": {
                          "line": 35,
                          "column": 8
                        },
                        "end": {
                          "line": 35,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1204,
                        "end": 1243,
                        "loc": {
                          "start": {
                            "line": 35,
                            "column": 8
                          },
                          "end": {
                            "line": 35,
                            "column": 47
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 1204,
                          "end": 1222,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 8
                            },
                            "end": {
                              "line": 35,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1204,
                            "end": 1208,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 8
                              },
                              "end": {
                                "line": 35,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1209,
                            "end": 1222,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 13
                              },
                              "end": {
                                "line": 35,
                                "column": 26
                              }
                            },
                            "name": "setFromCamera"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 1223,
                            "end": 1234,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 27
                              },
                              "end": {
                                "line": 35,
                                "column": 38
                              }
                            },
                            "name": "coordinates"
                          },
                          {
                            "type": "Identifier",
                            "start": 1236,
                            "end": 1242,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 40
                              },
                              "end": {
                                "line": 35,
                                "column": 46
                              }
                            },
                            "name": "camera"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ForStatement",
                      "start": 1253,
                      "end": 2042,
                      "loc": {
                        "start": {
                          "line": 36,
                          "column": 8
                        },
                        "end": {
                          "line": 51,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 1258,
                        "end": 1295,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 13
                          },
                          "end": {
                            "line": 36,
                            "column": 50
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 1262,
                            "end": 1267,
                            "loc": {
                              "start": {
                                "line": 36,
                                "column": 17
                              },
                              "end": {
                                "line": 36,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 1262,
                              "end": 1263,
                              "loc": {
                                "start": {
                                  "line": 36,
                                  "column": 17
                                },
                                "end": {
                                  "line": 36,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 1266,
                              "end": 1267,
                              "loc": {
                                "start": {
                                  "line": 36,
                                  "column": 21
                                },
                                "end": {
                                  "line": 36,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          },
                          {
                            "type": "VariableDeclarator",
                            "start": 1269,
                            "end": 1287,
                            "loc": {
                              "start": {
                                "line": 36,
                                "column": 24
                              },
                              "end": {
                                "line": 36,
                                "column": 42
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 1269,
                              "end": 1270,
                              "loc": {
                                "start": {
                                  "line": 36,
                                  "column": 24
                                },
                                "end": {
                                  "line": 36,
                                  "column": 25
                                }
                              },
                              "name": "l"
                            },
                            "init": {
                              "type": "MemberExpression",
                              "start": 1273,
                              "end": 1287,
                              "loc": {
                                "start": {
                                  "line": 36,
                                  "column": 28
                                },
                                "end": {
                                  "line": 36,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1273,
                                "end": 1280,
                                "loc": {
                                  "start": {
                                    "line": 36,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 36,
                                    "column": 35
                                  }
                                },
                                "name": "objects"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1281,
                                "end": 1287,
                                "loc": {
                                  "start": {
                                    "line": 36,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 36,
                                    "column": 42
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            }
                          },
                          {
                            "type": "VariableDeclarator",
                            "start": 1289,
                            "end": 1295,
                            "loc": {
                              "start": {
                                "line": 36,
                                "column": 44
                              },
                              "end": {
                                "line": 36,
                                "column": 50
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 1289,
                              "end": 1295,
                              "loc": {
                                "start": {
                                  "line": 36,
                                  "column": 44
                                },
                                "end": {
                                  "line": 36,
                                  "column": 50
                                }
                              },
                              "name": "object"
                            },
                            "init": null
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 1297,
                        "end": 1302,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 52
                          },
                          "end": {
                            "line": 36,
                            "column": 57
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 1297,
                          "end": 1298,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 52
                            },
                            "end": {
                              "line": 36,
                              "column": 53
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Identifier",
                          "start": 1301,
                          "end": 1302,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 56
                            },
                            "end": {
                              "line": 36,
                              "column": 57
                            }
                          },
                          "name": "l"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 1304,
                        "end": 1307,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 59
                          },
                          "end": {
                            "line": 36,
                            "column": 62
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 1304,
                          "end": 1305,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 59
                            },
                            "end": {
                              "line": 36,
                              "column": 60
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 1309,
                        "end": 2042,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 64
                          },
                          "end": {
                            "line": 51,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 1323,
                            "end": 1343,
                            "loc": {
                              "start": {
                                "line": 37,
                                "column": 12
                              },
                              "end": {
                                "line": 37,
                                "column": 32
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1323,
                              "end": 1342,
                              "loc": {
                                "start": {
                                  "line": 37,
                                  "column": 12
                                },
                                "end": {
                                  "line": 37,
                                  "column": 31
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 1323,
                                "end": 1329,
                                "loc": {
                                  "start": {
                                    "line": 37,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 37,
                                    "column": 18
                                  }
                                },
                                "name": "object"
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 1332,
                                "end": 1342,
                                "loc": {
                                  "start": {
                                    "line": 37,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 37,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1332,
                                  "end": 1339,
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 28
                                    }
                                  },
                                  "name": "objects"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1340,
                                  "end": 1341,
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 30
                                    }
                                  },
                                  "name": "i"
                                },
                                "computed": true
                              }
                            }
                          },
                          {
                            "type": "IfStatement",
                            "start": 1356,
                            "end": 2032,
                            "loc": {
                              "start": {
                                "line": 38,
                                "column": 12
                              },
                              "end": {
                                "line": 50,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 1435,
                              "end": 1858,
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 16
                                },
                                "end": {
                                  "line": 47,
                                  "column": 49
                                }
                              },
                              "left": {
                                "type": "LogicalExpression",
                                "start": 1435,
                                "end": 1773,
                                "loc": {
                                  "start": {
                                    "line": 39,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 45
                                  }
                                },
                                "left": {
                                  "type": "LogicalExpression",
                                  "start": 1435,
                                  "end": 1656,
                                  "loc": {
                                    "start": {
                                      "line": 39,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 43,
                                      "column": 45
                                    }
                                  },
                                  "left": {
                                    "type": "LogicalExpression",
                                    "start": 1435,
                                    "end": 1575,
                                    "loc": {
                                      "start": {
                                        "line": 39,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 41,
                                        "column": 37
                                      }
                                    },
                                    "left": {
                                      "type": "LogicalExpression",
                                      "start": 1436,
                                      "end": 1495,
                                      "loc": {
                                        "start": {
                                          "line": 39,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 39,
                                          "column": 76
                                        }
                                      },
                                      "left": {
                                        "type": "LogicalExpression",
                                        "start": 1436,
                                        "end": 1468,
                                        "loc": {
                                          "start": {
                                            "line": 39,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 39,
                                            "column": 49
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 1436,
                                          "end": 1445,
                                          "loc": {
                                            "start": {
                                              "line": 39,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 39,
                                              "column": 26
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "UnaryExpression",
                                            "start": 1437,
                                            "end": 1445,
                                            "loc": {
                                              "start": {
                                                "line": 39,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 39,
                                                "column": 26
                                              }
                                            },
                                            "operator": "!",
                                            "prefix": true,
                                            "argument": {
                                              "type": "UnaryExpression",
                                              "start": 1438,
                                              "end": 1445,
                                              "loc": {
                                                "start": {
                                                  "line": 39,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 39,
                                                  "column": 26
                                                }
                                              },
                                              "operator": "!",
                                              "prefix": true,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 1439,
                                                "end": 1445,
                                                "loc": {
                                                  "start": {
                                                    "line": 39,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 39,
                                                    "column": 26
                                                  }
                                                },
                                                "name": "filter",
                                                "leadingComments": null
                                              },
                                              "leadingComments": null
                                            },
                                            "leadingComments": null
                                          },
                                          "leadingComments": null
                                        },
                                        "operator": "||",
                                        "right": {
                                          "type": "BinaryExpression",
                                          "start": 1449,
                                          "end": 1468,
                                          "loc": {
                                            "start": {
                                              "line": 39,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 39,
                                              "column": 49
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 1449,
                                            "end": 1462,
                                            "loc": {
                                              "start": {
                                                "line": 39,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 39,
                                                "column": 43
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1449,
                                              "end": 1455,
                                              "loc": {
                                                "start": {
                                                  "line": 39,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 39,
                                                  "column": 36
                                                }
                                              },
                                              "name": "filter"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1456,
                                              "end": 1462,
                                              "loc": {
                                                "start": {
                                                  "line": 39,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 39,
                                                  "column": 43
                                                }
                                              },
                                              "name": "length"
                                            },
                                            "computed": false
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "Literal",
                                            "start": 1467,
                                            "end": 1468,
                                            "loc": {
                                              "start": {
                                                "line": 39,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 39,
                                                "column": 49
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        "leadingComments": null
                                      },
                                      "operator": "||",
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 1472,
                                        "end": 1495,
                                        "loc": {
                                          "start": {
                                            "line": 39,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 39,
                                            "column": 76
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 1472,
                                          "end": 1487,
                                          "loc": {
                                            "start": {
                                              "line": 39,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 39,
                                              "column": 68
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 1472,
                                            "end": 1478,
                                            "loc": {
                                              "start": {
                                                "line": 39,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 39,
                                                "column": 59
                                              }
                                            },
                                            "name": "filter"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1479,
                                            "end": 1487,
                                            "loc": {
                                              "start": {
                                                "line": 39,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 39,
                                                "column": 68
                                              }
                                            },
                                            "name": "includes"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 1488,
                                            "end": 1494,
                                            "loc": {
                                              "start": {
                                                "line": 39,
                                                "column": 69
                                              },
                                              "end": {
                                                "line": 39,
                                                "column": 75
                                              }
                                            },
                                            "name": "object"
                                          }
                                        ]
                                      },
                                      "leadingComments": null,
                                      "parenthesizedExpression": true
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 1557,
                                      "end": 1575,
                                      "loc": {
                                        "start": {
                                          "line": 41,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 41,
                                          "column": 37
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1557,
                                        "end": 1563,
                                        "loc": {
                                          "start": {
                                            "line": 41,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 41,
                                            "column": 25
                                          }
                                        },
                                        "name": "object",
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1564,
                                        "end": 1575,
                                        "loc": {
                                          "start": {
                                            "line": 41,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 41,
                                            "column": 37
                                          }
                                        },
                                        "name": "interaction",
                                        "leadingComments": null,
                                        "trailingComments": null
                                      },
                                      "computed": false,
                                      "leadingComments": [
                                        {
                                          "type": "CommentLine",
                                          "value": " must have interaction",
                                          "start": 1513,
                                          "end": 1537,
                                          "loc": {
                                            "start": {
                                              "line": 40,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 40,
                                              "column": 40
                                            }
                                          },
                                          "range": [
                                            1513,
                                            1537
                                          ]
                                        }
                                      ],
                                      "trailingComments": null
                                    },
                                    "leadingComments": null,
                                    "trailingComments": [
                                      {
                                        "type": "CommentLine",
                                        "value": " must be enabled",
                                        "start": 1592,
                                        "end": 1610,
                                        "loc": {
                                          "start": {
                                            "line": 42,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 42,
                                            "column": 34
                                          }
                                        },
                                        "range": [
                                          1592,
                                          1610
                                        ]
                                      }
                                    ]
                                  },
                                  "operator": "&&",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 1630,
                                    "end": 1656,
                                    "loc": {
                                      "start": {
                                        "line": 43,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 43,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1630,
                                      "end": 1648,
                                      "loc": {
                                        "start": {
                                          "line": 43,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 43,
                                          "column": 37
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1630,
                                        "end": 1636,
                                        "loc": {
                                          "start": {
                                            "line": 43,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 43,
                                            "column": 25
                                          }
                                        },
                                        "name": "object",
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1637,
                                        "end": 1648,
                                        "loc": {
                                          "start": {
                                            "line": 43,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 43,
                                            "column": 37
                                          }
                                        },
                                        "name": "interaction"
                                      },
                                      "computed": false,
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1649,
                                      "end": 1656,
                                      "loc": {
                                        "start": {
                                          "line": 43,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 43,
                                          "column": 45
                                        }
                                      },
                                      "name": "enabled",
                                      "leadingComments": null,
                                      "trailingComments": null
                                    },
                                    "computed": false,
                                    "leadingComments": [
                                      {
                                        "type": "CommentLine",
                                        "value": " must be enabled",
                                        "start": 1592,
                                        "end": 1610,
                                        "loc": {
                                          "start": {
                                            "line": 42,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 42,
                                            "column": 34
                                          }
                                        },
                                        "range": [
                                          1592,
                                          1610
                                        ]
                                      }
                                    ],
                                    "trailingComments": null
                                  },
                                  "leadingComments": null,
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": " muste be activ (have interaction related listeners)",
                                      "start": 1673,
                                      "end": 1727,
                                      "loc": {
                                        "start": {
                                          "line": 44,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 44,
                                          "column": 70
                                        }
                                      },
                                      "range": [
                                        1673,
                                        1727
                                      ]
                                    }
                                  ]
                                },
                                "operator": "&&",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 1747,
                                  "end": 1773,
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1747,
                                    "end": 1765,
                                    "loc": {
                                      "start": {
                                        "line": 45,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 45,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 1747,
                                      "end": 1753,
                                      "loc": {
                                        "start": {
                                          "line": 45,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 45,
                                          "column": 25
                                        }
                                      },
                                      "name": "object",
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1754,
                                      "end": 1765,
                                      "loc": {
                                        "start": {
                                          "line": 45,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 45,
                                          "column": 37
                                        }
                                      },
                                      "name": "interaction"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1766,
                                    "end": 1773,
                                    "loc": {
                                      "start": {
                                        "line": 45,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 45,
                                        "column": 45
                                      }
                                    },
                                    "name": "_active",
                                    "leadingComments": null,
                                    "trailingComments": null
                                  },
                                  "computed": false,
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": " muste be activ (have interaction related listeners)",
                                      "start": 1673,
                                      "end": 1727,
                                      "loc": {
                                        "start": {
                                          "line": 44,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 44,
                                          "column": 70
                                        }
                                      },
                                      "range": [
                                        1673,
                                        1727
                                      ]
                                    }
                                  ],
                                  "trailingComments": null
                                },
                                "leadingComments": null,
                                "trailingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": " must be visible",
                                    "start": 1790,
                                    "end": 1808,
                                    "loc": {
                                      "start": {
                                        "line": 46,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 46,
                                        "column": 34
                                      }
                                    },
                                    "range": [
                                      1790,
                                      1808
                                    ]
                                  }
                                ]
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 1828,
                                "end": 1858,
                                "loc": {
                                  "start": {
                                    "line": 47,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 47,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 1828,
                                  "end": 1850,
                                  "loc": {
                                    "start": {
                                      "line": 47,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 47,
                                      "column": 41
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 1828,
                                    "end": 1832,
                                    "loc": {
                                      "start": {
                                        "line": 47,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 47,
                                        "column": 23
                                      }
                                    },
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1833,
                                    "end": 1850,
                                    "loc": {
                                      "start": {
                                        "line": 47,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 47,
                                        "column": 41
                                      }
                                    },
                                    "name": "isActuallyVisible"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 1851,
                                    "end": 1857,
                                    "loc": {
                                      "start": {
                                        "line": 47,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 47,
                                        "column": 48
                                      }
                                    },
                                    "name": "object"
                                  }
                                ],
                                "leadingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": " must be visible",
                                    "start": 1790,
                                    "end": 1808,
                                    "loc": {
                                      "start": {
                                        "line": 46,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 46,
                                        "column": 34
                                      }
                                    },
                                    "range": [
                                      1790,
                                      1808
                                    ]
                                  }
                                ]
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": " No filter, filter is empty, or object is part of filter",
                                  "start": 1360,
                                  "end": 1418,
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 74
                                    }
                                  },
                                  "range": [
                                    1360,
                                    1418
                                  ]
                                }
                              ]
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 1860,
                              "end": 2032,
                              "loc": {
                                "start": {
                                  "line": 47,
                                  "column": 51
                                },
                                "end": {
                                  "line": 50,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1919,
                                  "end": 2018,
                                  "loc": {
                                    "start": {
                                      "line": 49,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 49,
                                      "column": 115
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 1919,
                                    "end": 2017,
                                    "loc": {
                                      "start": {
                                        "line": 49,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 49,
                                        "column": 114
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 1919,
                                      "end": 1933,
                                      "loc": {
                                        "start": {
                                          "line": 49,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 49,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 1919,
                                        "end": 1923,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 20
                                          }
                                        },
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1924,
                                        "end": 1933,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 30
                                          }
                                        },
                                        "name": "intersect"
                                      },
                                      "computed": false,
                                      "leadingComments": null
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 1934,
                                        "end": 1940,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 37
                                          }
                                        },
                                        "name": "object"
                                      },
                                      {
                                        "type": "MemberExpression",
                                        "start": 1942,
                                        "end": 1970,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 67
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1942,
                                          "end": 1960,
                                          "loc": {
                                            "start": {
                                              "line": 49,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 49,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 1942,
                                            "end": 1948,
                                            "loc": {
                                              "start": {
                                                "line": 49,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 49,
                                                "column": 45
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1949,
                                            "end": 1960,
                                            "loc": {
                                              "start": {
                                                "line": 49,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 49,
                                                "column": 57
                                              }
                                            },
                                            "name": "interaction"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1961,
                                          "end": 1970,
                                          "loc": {
                                            "start": {
                                              "line": 49,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 49,
                                              "column": 67
                                            }
                                          },
                                          "name": "recursive"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 1972,
                                        "end": 1982,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 79
                                          }
                                        },
                                        "name": "intersects"
                                      },
                                      {
                                        "type": "MemberExpression",
                                        "start": 1984,
                                        "end": 2008,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 81
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 105
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1984,
                                          "end": 2002,
                                          "loc": {
                                            "start": {
                                              "line": 49,
                                              "column": 81
                                            },
                                            "end": {
                                              "line": 49,
                                              "column": 99
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 1984,
                                            "end": 1990,
                                            "loc": {
                                              "start": {
                                                "line": 49,
                                                "column": 81
                                              },
                                              "end": {
                                                "line": 49,
                                                "column": 87
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1991,
                                            "end": 2002,
                                            "loc": {
                                              "start": {
                                                "line": 49,
                                                "column": 88
                                              },
                                              "end": {
                                                "line": 49,
                                                "column": 99
                                              }
                                            },
                                            "name": "interaction"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2003,
                                          "end": 2008,
                                          "loc": {
                                            "start": {
                                              "line": 49,
                                              "column": 100
                                            },
                                            "end": {
                                              "line": 49,
                                              "column": 105
                                            }
                                          },
                                          "name": "types"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 2010,
                                        "end": 2016,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 107
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 113
                                          }
                                        },
                                        "name": "object"
                                      }
                                    ],
                                    "leadingComments": null
                                  },
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": " ... then we intersect",
                                      "start": 1878,
                                      "end": 1902,
                                      "loc": {
                                        "start": {
                                          "line": 48,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 48,
                                          "column": 40
                                        }
                                      },
                                      "range": [
                                        1878,
                                        1902
                                      ]
                                    }
                                  ]
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2051,
                      "end": 2193,
                      "loc": {
                        "start": {
                          "line": 52,
                          "column": 8
                        },
                        "end": {
                          "line": 54,
                          "column": 10
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2051,
                        "end": 2192,
                        "loc": {
                          "start": {
                            "line": 52,
                            "column": 8
                          },
                          "end": {
                            "line": 54,
                            "column": 9
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2051,
                          "end": 2066,
                          "loc": {
                            "start": {
                              "line": 52,
                              "column": 8
                            },
                            "end": {
                              "line": 52,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 2051,
                            "end": 2061,
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 8
                              },
                              "end": {
                                "line": 52,
                                "column": 18
                              }
                            },
                            "name": "intersects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2062,
                            "end": 2066,
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 19
                              },
                              "end": {
                                "line": 52,
                                "column": 23
                              }
                            },
                            "name": "sort"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 2068,
                            "end": 2182,
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 25
                              },
                              "end": {
                                "line": 53,
                                "column": 104
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 2069,
                                "end": 2070,
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 27
                                  }
                                },
                                "name": "a"
                              },
                              {
                                "type": "Identifier",
                                "start": 2072,
                                "end": 2073,
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 30
                                  }
                                },
                                "name": "b"
                              }
                            ],
                            "body": {
                              "type": "LogicalExpression",
                              "start": 2090,
                              "end": 2182,
                              "loc": {
                                "start": {
                                  "line": 53,
                                  "column": 12
                                },
                                "end": {
                                  "line": 53,
                                  "column": 104
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 2090,
                                "end": 2155,
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 77
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 2090,
                                  "end": 2121,
                                  "loc": {
                                    "start": {
                                      "line": 53,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 53,
                                      "column": 43
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2090,
                                    "end": 2112,
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 53,
                                        "column": 34
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 2090,
                                      "end": 2100,
                                      "loc": {
                                        "start": {
                                          "line": 53,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 53,
                                          "column": 22
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 2090,
                                        "end": 2091,
                                        "loc": {
                                          "start": {
                                            "line": 53,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 53,
                                            "column": 13
                                          }
                                        },
                                        "name": "b"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2092,
                                        "end": 2100,
                                        "loc": {
                                          "start": {
                                            "line": 53,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 53,
                                            "column": 22
                                          }
                                        },
                                        "name": "receiver"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2101,
                                      "end": 2112,
                                      "loc": {
                                        "start": {
                                          "line": 53,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 53,
                                          "column": 34
                                        }
                                      },
                                      "name": "interaction"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2113,
                                    "end": 2121,
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 53,
                                        "column": 43
                                      }
                                    },
                                    "name": "priority"
                                  },
                                  "computed": false
                                },
                                "operator": "-",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 2124,
                                  "end": 2155,
                                  "loc": {
                                    "start": {
                                      "line": 53,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 53,
                                      "column": 77
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2124,
                                    "end": 2146,
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 53,
                                        "column": 68
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 2124,
                                      "end": 2134,
                                      "loc": {
                                        "start": {
                                          "line": 53,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 53,
                                          "column": 56
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 2124,
                                        "end": 2125,
                                        "loc": {
                                          "start": {
                                            "line": 53,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 53,
                                            "column": 47
                                          }
                                        },
                                        "name": "a"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2126,
                                        "end": 2134,
                                        "loc": {
                                          "start": {
                                            "line": 53,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 53,
                                            "column": 56
                                          }
                                        },
                                        "name": "receiver"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2135,
                                      "end": 2146,
                                      "loc": {
                                        "start": {
                                          "line": 53,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 53,
                                          "column": 68
                                        }
                                      },
                                      "name": "interaction"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2147,
                                    "end": 2155,
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 69
                                      },
                                      "end": {
                                        "line": 53,
                                        "column": 77
                                      }
                                    },
                                    "name": "priority"
                                  },
                                  "computed": false
                                }
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 2159,
                                "end": 2182,
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 81
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 104
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 2159,
                                  "end": 2169,
                                  "loc": {
                                    "start": {
                                      "line": 53,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 53,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 2159,
                                    "end": 2160,
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 81
                                      },
                                      "end": {
                                        "line": 53,
                                        "column": 82
                                      }
                                    },
                                    "name": "a"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2161,
                                    "end": 2169,
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 83
                                      },
                                      "end": {
                                        "line": 53,
                                        "column": 91
                                      }
                                    },
                                    "name": "distance"
                                  },
                                  "computed": false
                                },
                                "operator": "-",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 2172,
                                  "end": 2182,
                                  "loc": {
                                    "start": {
                                      "line": 53,
                                      "column": 94
                                    },
                                    "end": {
                                      "line": 53,
                                      "column": 104
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 2172,
                                    "end": 2173,
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 94
                                      },
                                      "end": {
                                        "line": 53,
                                        "column": 95
                                      }
                                    },
                                    "name": "b"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2174,
                                    "end": 2182,
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 96
                                      },
                                      "end": {
                                        "line": 53,
                                        "column": 104
                                      }
                                    },
                                    "name": "distance"
                                  },
                                  "computed": false
                                }
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 2202,
                      "end": 2220,
                      "loc": {
                        "start": {
                          "line": 55,
                          "column": 8
                        },
                        "end": {
                          "line": 55,
                          "column": 26
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 2209,
                        "end": 2219,
                        "loc": {
                          "start": {
                            "line": 55,
                            "column": 15
                          },
                          "end": {
                            "line": 55,
                            "column": 25
                          }
                        },
                        "name": "intersects"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 2232,
              "end": 3575,
              "loc": {
                "start": {
                  "line": 58,
                  "column": 4
                },
                "end": {
                  "line": 92,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 2232,
                "end": 2241,
                "loc": {
                  "start": {
                    "line": 58,
                    "column": 4
                  },
                  "end": {
                    "line": 58,
                    "column": 13
                  }
                },
                "name": "intersect"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 2241,
                "end": 3575,
                "loc": {
                  "start": {
                    "line": 58,
                    "column": 13
                  },
                  "end": {
                    "line": 92,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 2242,
                    "end": 2248,
                    "loc": {
                      "start": {
                        "line": 58,
                        "column": 14
                      },
                      "end": {
                        "line": 58,
                        "column": 20
                      }
                    },
                    "name": "object"
                  },
                  {
                    "type": "Identifier",
                    "start": 2250,
                    "end": 2259,
                    "loc": {
                      "start": {
                        "line": 58,
                        "column": 22
                      },
                      "end": {
                        "line": 58,
                        "column": 31
                      }
                    },
                    "name": "recursive"
                  },
                  {
                    "type": "Identifier",
                    "start": 2261,
                    "end": 2271,
                    "loc": {
                      "start": {
                        "line": 58,
                        "column": 33
                      },
                      "end": {
                        "line": 58,
                        "column": 43
                      }
                    },
                    "name": "intersects"
                  },
                  {
                    "type": "Identifier",
                    "start": 2273,
                    "end": 2278,
                    "loc": {
                      "start": {
                        "line": 58,
                        "column": 45
                      },
                      "end": {
                        "line": 58,
                        "column": 50
                      }
                    },
                    "name": "types"
                  },
                  {
                    "type": "Identifier",
                    "start": 2280,
                    "end": 2286,
                    "loc": {
                      "start": {
                        "line": 58,
                        "column": 52
                      },
                      "end": {
                        "line": 58,
                        "column": 58
                      }
                    },
                    "name": "parent"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 2288,
                  "end": 3575,
                  "loc": {
                    "start": {
                      "line": 58,
                      "column": 60
                    },
                    "end": {
                      "line": 92,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 2298,
                      "end": 2380,
                      "loc": {
                        "start": {
                          "line": 59,
                          "column": 8
                        },
                        "end": {
                          "line": 59,
                          "column": 90
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 2302,
                        "end": 2371,
                        "loc": {
                          "start": {
                            "line": 59,
                            "column": 12
                          },
                          "end": {
                            "line": 59,
                            "column": 81
                          }
                        },
                        "left": {
                          "type": "LogicalExpression",
                          "start": 2302,
                          "end": 2339,
                          "loc": {
                            "start": {
                              "line": 59,
                              "column": 12
                            },
                            "end": {
                              "line": 59,
                              "column": 49
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 2302,
                            "end": 2309,
                            "loc": {
                              "start": {
                                "line": 59,
                                "column": 12
                              },
                              "end": {
                                "line": 59,
                                "column": 19
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "UnaryExpression",
                              "start": 2303,
                              "end": 2309,
                              "loc": {
                                "start": {
                                  "line": 59,
                                  "column": 13
                                },
                                "end": {
                                  "line": 59,
                                  "column": 19
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 2304,
                                "end": 2309,
                                "loc": {
                                  "start": {
                                    "line": 59,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 59,
                                    "column": 19
                                  }
                                },
                                "name": "types"
                              }
                            }
                          },
                          "operator": "&&",
                          "right": {
                            "type": "BinaryExpression",
                            "start": 2313,
                            "end": 2339,
                            "loc": {
                              "start": {
                                "line": 59,
                                "column": 23
                              },
                              "end": {
                                "line": 59,
                                "column": 49
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 2313,
                              "end": 2324,
                              "loc": {
                                "start": {
                                  "line": 59,
                                  "column": 23
                                },
                                "end": {
                                  "line": 59,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 2313,
                                "end": 2319,
                                "loc": {
                                  "start": {
                                    "line": 59,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 59,
                                    "column": 29
                                  }
                                },
                                "name": "object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2320,
                                "end": 2324,
                                "loc": {
                                  "start": {
                                    "line": 59,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 59,
                                    "column": 34
                                  }
                                },
                                "name": "type"
                              },
                              "computed": false
                            },
                            "operator": "!==",
                            "right": {
                              "type": "Literal",
                              "start": 2329,
                              "end": 2339,
                              "loc": {
                                "start": {
                                  "line": 59,
                                  "column": 39
                                },
                                "end": {
                                  "line": 59,
                                  "column": 49
                                }
                              },
                              "value": "Object3D",
                              "rawValue": "Object3D",
                              "raw": "'Object3D'"
                            }
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 2343,
                          "end": 2371,
                          "loc": {
                            "start": {
                              "line": 59,
                              "column": 53
                            },
                            "end": {
                              "line": 59,
                              "column": 81
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "CallExpression",
                            "start": 2344,
                            "end": 2371,
                            "loc": {
                              "start": {
                                "line": 59,
                                "column": 54
                              },
                              "end": {
                                "line": 59,
                                "column": 81
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 2344,
                              "end": 2358,
                              "loc": {
                                "start": {
                                  "line": 59,
                                  "column": 54
                                },
                                "end": {
                                  "line": 59,
                                  "column": 68
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 2344,
                                "end": 2349,
                                "loc": {
                                  "start": {
                                    "line": 59,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 59,
                                    "column": 59
                                  }
                                },
                                "name": "types"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2350,
                                "end": 2358,
                                "loc": {
                                  "start": {
                                    "line": 59,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 59,
                                    "column": 68
                                  }
                                },
                                "name": "includes"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 2359,
                                "end": 2370,
                                "loc": {
                                  "start": {
                                    "line": 59,
                                    "column": 69
                                  },
                                  "end": {
                                    "line": 59,
                                    "column": 80
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 2359,
                                  "end": 2365,
                                  "loc": {
                                    "start": {
                                      "line": 59,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 59,
                                      "column": 75
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2366,
                                  "end": 2370,
                                  "loc": {
                                    "start": {
                                      "line": 59,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 59,
                                      "column": 80
                                    }
                                  },
                                  "name": "type"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 2373,
                        "end": 2380,
                        "loc": {
                          "start": {
                            "line": 59,
                            "column": 83
                          },
                          "end": {
                            "line": 59,
                            "column": 90
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 2390,
                      "end": 2420,
                      "loc": {
                        "start": {
                          "line": 61,
                          "column": 8
                        },
                        "end": {
                          "line": 61,
                          "column": 38
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 2394,
                          "end": 2419,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 12
                            },
                            "end": {
                              "line": 61,
                              "column": 37
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 2394,
                            "end": 2399,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 12
                              },
                              "end": {
                                "line": 61,
                                "column": 17
                              }
                            },
                            "name": "count"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 2402,
                            "end": 2419,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 20
                              },
                              "end": {
                                "line": 61,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 2402,
                              "end": 2412,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 20
                                },
                                "end": {
                                  "line": 61,
                                  "column": 30
                                }
                              },
                              "name": "intersects"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2413,
                              "end": 2419,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 31
                                },
                                "end": {
                                  "line": 61,
                                  "column": 37
                                }
                              },
                              "name": "length"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2429,
                      "end": 2491,
                      "loc": {
                        "start": {
                          "line": 62,
                          "column": 8
                        },
                        "end": {
                          "line": 62,
                          "column": 70
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2429,
                        "end": 2490,
                        "loc": {
                          "start": {
                            "line": 62,
                            "column": 8
                          },
                          "end": {
                            "line": 62,
                            "column": 69
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2429,
                          "end": 2443,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 8
                            },
                            "end": {
                              "line": 62,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 2429,
                            "end": 2435,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 8
                              },
                              "end": {
                                "line": 62,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2436,
                            "end": 2443,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 15
                              },
                              "end": {
                                "line": 62,
                                "column": 22
                              }
                            },
                            "name": "raycast"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 2444,
                            "end": 2448,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 23
                              },
                              "end": {
                                "line": 62,
                                "column": 27
                              }
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 2450,
                            "end": 2460,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 29
                              },
                              "end": {
                                "line": 62,
                                "column": 39
                              }
                            },
                            "name": "intersects"
                          },
                          {
                            "type": "MemberExpression",
                            "start": 2462,
                            "end": 2489,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 41
                              },
                              "end": {
                                "line": 62,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 2462,
                              "end": 2480,
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 41
                                },
                                "end": {
                                  "line": 62,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 2462,
                                "end": 2468,
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 47
                                  }
                                },
                                "name": "parent"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2469,
                                "end": 2480,
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 59
                                  }
                                },
                                "name": "interaction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2481,
                              "end": 2489,
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 60
                                },
                                "end": {
                                  "line": 62,
                                  "column": 68
                                }
                              },
                              "name": "approach"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 2501,
                      "end": 2542,
                      "loc": {
                        "start": {
                          "line": 64,
                          "column": 8
                        },
                        "end": {
                          "line": 64,
                          "column": 49
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 2505,
                          "end": 2541,
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 12
                            },
                            "end": {
                              "line": 64,
                              "column": 48
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 2505,
                            "end": 2512,
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 12
                              },
                              "end": {
                                "line": 64,
                                "column": 19
                              }
                            },
                            "name": "changes"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 2515,
                            "end": 2541,
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 22
                              },
                              "end": {
                                "line": 64,
                                "column": 48
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 2515,
                              "end": 2532,
                              "loc": {
                                "start": {
                                  "line": 64,
                                  "column": 22
                                },
                                "end": {
                                  "line": 64,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 2515,
                                "end": 2525,
                                "loc": {
                                  "start": {
                                    "line": 64,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 64,
                                    "column": 32
                                  }
                                },
                                "name": "intersects"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2526,
                                "end": 2532,
                                "loc": {
                                  "start": {
                                    "line": 64,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 64,
                                    "column": 39
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            },
                            "operator": "!=",
                            "right": {
                              "type": "Identifier",
                              "start": 2536,
                              "end": 2541,
                              "loc": {
                                "start": {
                                  "line": 64,
                                  "column": 43
                                },
                                "end": {
                                  "line": 64,
                                  "column": 48
                                }
                              },
                              "name": "count"
                            }
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 2551,
                      "end": 2980,
                      "loc": {
                        "start": {
                          "line": 65,
                          "column": 8
                        },
                        "end": {
                          "line": 75,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 2555,
                        "end": 2562,
                        "loc": {
                          "start": {
                            "line": 65,
                            "column": 12
                          },
                          "end": {
                            "line": 65,
                            "column": 19
                          }
                        },
                        "name": "changes"
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 2564,
                        "end": 2980,
                        "loc": {
                          "start": {
                            "line": 65,
                            "column": 21
                          },
                          "end": {
                            "line": 75,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ForStatement",
                            "start": 2578,
                            "end": 2970,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 12
                              },
                              "end": {
                                "line": 74,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 2583,
                              "end": 2630,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 17
                                },
                                "end": {
                                  "line": 66,
                                  "column": 64
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 2587,
                                  "end": 2596,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 30
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 2587,
                                    "end": 2588,
                                    "loc": {
                                      "start": {
                                        "line": 66,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 66,
                                        "column": 22
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "init": {
                                    "type": "Identifier",
                                    "start": 2591,
                                    "end": 2596,
                                    "loc": {
                                      "start": {
                                        "line": 66,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 66,
                                        "column": 30
                                      }
                                    },
                                    "name": "count"
                                  }
                                },
                                {
                                  "type": "VariableDeclarator",
                                  "start": 2598,
                                  "end": 2607,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 41
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 2598,
                                    "end": 2607,
                                    "loc": {
                                      "start": {
                                        "line": 66,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 66,
                                        "column": 41
                                      }
                                    },
                                    "name": "intersect"
                                  },
                                  "init": null
                                },
                                {
                                  "type": "VariableDeclarator",
                                  "start": 2609,
                                  "end": 2630,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 64
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 2609,
                                    "end": 2610,
                                    "loc": {
                                      "start": {
                                        "line": 66,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 66,
                                        "column": 44
                                      }
                                    },
                                    "name": "l"
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "start": 2613,
                                    "end": 2630,
                                    "loc": {
                                      "start": {
                                        "line": 66,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 66,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2613,
                                      "end": 2623,
                                      "loc": {
                                        "start": {
                                          "line": 66,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 66,
                                          "column": 57
                                        }
                                      },
                                      "name": "intersects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2624,
                                      "end": 2630,
                                      "loc": {
                                        "start": {
                                          "line": 66,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 66,
                                          "column": 64
                                        }
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  }
                                }
                              ],
                              "kind": "let"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 2632,
                              "end": 2637,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 66
                                },
                                "end": {
                                  "line": 66,
                                  "column": 71
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 2632,
                                "end": 2633,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 67
                                  }
                                },
                                "name": "i"
                              },
                              "operator": "<",
                              "right": {
                                "type": "Identifier",
                                "start": 2636,
                                "end": 2637,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 71
                                  }
                                },
                                "name": "l"
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 2639,
                              "end": 2642,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 73
                                },
                                "end": {
                                  "line": 66,
                                  "column": 76
                                }
                              },
                              "operator": "++",
                              "prefix": false,
                              "argument": {
                                "type": "Identifier",
                                "start": 2639,
                                "end": 2640,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 74
                                  }
                                },
                                "name": "i"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 2644,
                              "end": 2970,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 78
                                },
                                "end": {
                                  "line": 74,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 2662,
                                  "end": 2688,
                                  "loc": {
                                    "start": {
                                      "line": 67,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 67,
                                      "column": 42
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 2662,
                                    "end": 2687,
                                    "loc": {
                                      "start": {
                                        "line": 67,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 67,
                                        "column": 41
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 2662,
                                      "end": 2671,
                                      "loc": {
                                        "start": {
                                          "line": 67,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 67,
                                          "column": 25
                                        }
                                      },
                                      "name": "intersect"
                                    },
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 2674,
                                      "end": 2687,
                                      "loc": {
                                        "start": {
                                          "line": 67,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 67,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 2674,
                                        "end": 2684,
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 38
                                          }
                                        },
                                        "name": "intersects"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2685,
                                        "end": 2686,
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 40
                                          }
                                        },
                                        "name": "i"
                                      },
                                      "computed": true
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 2705,
                                  "end": 2733,
                                  "loc": {
                                    "start": {
                                      "line": 68,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 68,
                                      "column": 44
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 2705,
                                    "end": 2732,
                                    "loc": {
                                      "start": {
                                        "line": 68,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 68,
                                        "column": 43
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 2705,
                                      "end": 2723,
                                      "loc": {
                                        "start": {
                                          "line": 68,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 68,
                                          "column": 34
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 2705,
                                        "end": 2714,
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 25
                                          }
                                        },
                                        "name": "intersect"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2715,
                                        "end": 2723,
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 34
                                          }
                                        },
                                        "name": "receiver"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 2726,
                                      "end": 2732,
                                      "loc": {
                                        "start": {
                                          "line": 68,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 68,
                                          "column": 43
                                        }
                                      },
                                      "name": "parent"
                                    }
                                  },
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": " If the parent/receiver is not recursive data.object should point back to it",
                                      "start": 2751,
                                      "end": 2829,
                                      "loc": {
                                        "start": {
                                          "line": 70,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 70,
                                          "column": 94
                                        }
                                      },
                                      "range": [
                                        2751,
                                        2829
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 2846,
                                  "end": 2956,
                                  "loc": {
                                    "start": {
                                      "line": 71,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 73,
                                      "column": 17
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 2850,
                                    "end": 2879,
                                    "loc": {
                                      "start": {
                                        "line": 71,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 71,
                                        "column": 49
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "MemberExpression",
                                      "start": 2851,
                                      "end": 2879,
                                      "loc": {
                                        "start": {
                                          "line": 71,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 71,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 2851,
                                        "end": 2869,
                                        "loc": {
                                          "start": {
                                            "line": 71,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 71,
                                            "column": 39
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 2851,
                                          "end": 2857,
                                          "loc": {
                                            "start": {
                                              "line": 71,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 71,
                                              "column": 27
                                            }
                                          },
                                          "name": "parent",
                                          "leadingComments": null
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2858,
                                          "end": 2869,
                                          "loc": {
                                            "start": {
                                              "line": 71,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 71,
                                              "column": 39
                                            }
                                          },
                                          "name": "interaction"
                                        },
                                        "computed": false,
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2870,
                                        "end": 2879,
                                        "loc": {
                                          "start": {
                                            "line": 71,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 71,
                                            "column": 49
                                          }
                                        },
                                        "name": "recursive"
                                      },
                                      "computed": false,
                                      "leadingComments": null
                                    },
                                    "leadingComments": null
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 2881,
                                    "end": 2956,
                                    "loc": {
                                      "start": {
                                        "line": 71,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 73,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2903,
                                        "end": 2938,
                                        "loc": {
                                          "start": {
                                            "line": 72,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 55
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2903,
                                          "end": 2937,
                                          "loc": {
                                            "start": {
                                              "line": 72,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 72,
                                              "column": 54
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2903,
                                            "end": 2928,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 45
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2903,
                                              "end": 2921,
                                              "loc": {
                                                "start": {
                                                  "line": 72,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 72,
                                                  "column": 38
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 2903,
                                                "end": 2912,
                                                "loc": {
                                                  "start": {
                                                    "line": 72,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 72,
                                                    "column": 29
                                                  }
                                                },
                                                "name": "intersect"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2913,
                                                "end": 2921,
                                                "loc": {
                                                  "start": {
                                                    "line": 72,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 72,
                                                    "column": 38
                                                  }
                                                },
                                                "name": "receiver"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2922,
                                              "end": 2928,
                                              "loc": {
                                                "start": {
                                                  "line": 72,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 72,
                                                  "column": 45
                                                }
                                              },
                                              "name": "object"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "Identifier",
                                            "start": 2931,
                                            "end": 2937,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 54
                                              }
                                            },
                                            "name": "parent"
                                          }
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": null,
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": " If the parent/receiver is not recursive data.object should point back to it",
                                      "start": 2751,
                                      "end": 2829,
                                      "loc": {
                                        "start": {
                                          "line": 70,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 70,
                                          "column": 94
                                        }
                                      },
                                      "range": [
                                        2751,
                                        2829
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ],
                        "trailingComments": null
                      },
                      "alternate": null,
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " If the root is not recursive and hits have already been made out, there's",
                          "start": 2990,
                          "end": 3066,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 8
                            },
                            "end": {
                              "line": 77,
                              "column": 84
                            }
                          },
                          "range": [
                            2990,
                            3066
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " no point in iterating further",
                          "start": 3075,
                          "end": 3107,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 8
                            },
                            "end": {
                              "line": 78,
                              "column": 40
                            }
                          },
                          "range": [
                            3075,
                            3107
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 3116,
                      "end": 3186,
                      "loc": {
                        "start": {
                          "line": 79,
                          "column": 8
                        },
                        "end": {
                          "line": 80,
                          "column": 24
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 3120,
                        "end": 3160,
                        "loc": {
                          "start": {
                            "line": 79,
                            "column": 12
                          },
                          "end": {
                            "line": 79,
                            "column": 52
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 3120,
                          "end": 3127,
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 12
                            },
                            "end": {
                              "line": 79,
                              "column": 19
                            }
                          },
                          "name": "changes",
                          "leadingComments": null
                        },
                        "operator": "&&",
                        "right": {
                          "type": "UnaryExpression",
                          "start": 3131,
                          "end": 3160,
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 23
                            },
                            "end": {
                              "line": 79,
                              "column": 52
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "MemberExpression",
                            "start": 3132,
                            "end": 3160,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 24
                              },
                              "end": {
                                "line": 79,
                                "column": 52
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 3132,
                              "end": 3150,
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 24
                                },
                                "end": {
                                  "line": 79,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 3132,
                                "end": 3138,
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 30
                                  }
                                },
                                "name": "parent"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3139,
                                "end": 3150,
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 42
                                  }
                                },
                                "name": "interaction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3151,
                              "end": 3160,
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 43
                                },
                                "end": {
                                  "line": 79,
                                  "column": 52
                                }
                              },
                              "name": "recursive"
                            },
                            "computed": false
                          }
                        },
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 3174,
                        "end": 3186,
                        "loc": {
                          "start": {
                            "line": 80,
                            "column": 12
                          },
                          "end": {
                            "line": 80,
                            "column": 24
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 3181,
                          "end": 3185,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 19
                            },
                            "end": {
                              "line": 80,
                              "column": 23
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " If the root is not recursive and hits have already been made out, there's",
                          "start": 2990,
                          "end": 3066,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 8
                            },
                            "end": {
                              "line": 77,
                              "column": 84
                            }
                          },
                          "range": [
                            2990,
                            3066
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " no point in iterating further",
                          "start": 3075,
                          "end": 3107,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 8
                            },
                            "end": {
                              "line": 78,
                              "column": 40
                            }
                          },
                          "range": [
                            3075,
                            3107
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForStatement",
                      "start": 3196,
                      "end": 3544,
                      "loc": {
                        "start": {
                          "line": 82,
                          "column": 8
                        },
                        "end": {
                          "line": 89,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 3201,
                        "end": 3245,
                        "loc": {
                          "start": {
                            "line": 82,
                            "column": 13
                          },
                          "end": {
                            "line": 82,
                            "column": 57
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 3205,
                            "end": 3210,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 17
                              },
                              "end": {
                                "line": 82,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 3205,
                              "end": 3206,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 17
                                },
                                "end": {
                                  "line": 82,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 3209,
                              "end": 3210,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 21
                                },
                                "end": {
                                  "line": 82,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          },
                          {
                            "type": "VariableDeclarator",
                            "start": 3212,
                            "end": 3238,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 24
                              },
                              "end": {
                                "line": 82,
                                "column": 50
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 3212,
                              "end": 3213,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 24
                                },
                                "end": {
                                  "line": 82,
                                  "column": 25
                                }
                              },
                              "name": "l"
                            },
                            "init": {
                              "type": "MemberExpression",
                              "start": 3216,
                              "end": 3238,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 28
                                },
                                "end": {
                                  "line": 82,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3216,
                                "end": 3231,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 43
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3216,
                                  "end": 3222,
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 34
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3223,
                                  "end": 3231,
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 43
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3232,
                                "end": 3238,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 50
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            }
                          },
                          {
                            "type": "VariableDeclarator",
                            "start": 3240,
                            "end": 3245,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 52
                              },
                              "end": {
                                "line": 82,
                                "column": 57
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 3240,
                              "end": 3245,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 52
                                },
                                "end": {
                                  "line": 82,
                                  "column": 57
                                }
                              },
                              "name": "child"
                            },
                            "init": null
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 3247,
                        "end": 3252,
                        "loc": {
                          "start": {
                            "line": 82,
                            "column": 59
                          },
                          "end": {
                            "line": 82,
                            "column": 64
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 3247,
                          "end": 3248,
                          "loc": {
                            "start": {
                              "line": 82,
                              "column": 59
                            },
                            "end": {
                              "line": 82,
                              "column": 60
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Identifier",
                          "start": 3251,
                          "end": 3252,
                          "loc": {
                            "start": {
                              "line": 82,
                              "column": 63
                            },
                            "end": {
                              "line": 82,
                              "column": 64
                            }
                          },
                          "name": "l"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 3254,
                        "end": 3257,
                        "loc": {
                          "start": {
                            "line": 82,
                            "column": 66
                          },
                          "end": {
                            "line": 82,
                            "column": 69
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 3254,
                          "end": 3255,
                          "loc": {
                            "start": {
                              "line": 82,
                              "column": 66
                            },
                            "end": {
                              "line": 82,
                              "column": 67
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 3259,
                        "end": 3544,
                        "loc": {
                          "start": {
                            "line": 82,
                            "column": 71
                          },
                          "end": {
                            "line": 89,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 3273,
                            "end": 3300,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 12
                              },
                              "end": {
                                "line": 83,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 3273,
                              "end": 3299,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 12
                                },
                                "end": {
                                  "line": 83,
                                  "column": 38
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 3273,
                                "end": 3278,
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 17
                                  }
                                },
                                "name": "child"
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 3281,
                                "end": 3299,
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3281,
                                  "end": 3296,
                                  "loc": {
                                    "start": {
                                      "line": 83,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 83,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 3281,
                                    "end": 3287,
                                    "loc": {
                                      "start": {
                                        "line": 83,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 83,
                                        "column": 26
                                      }
                                    },
                                    "name": "object"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3288,
                                    "end": 3296,
                                    "loc": {
                                      "start": {
                                        "line": 83,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 83,
                                        "column": 35
                                      }
                                    },
                                    "name": "children"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3297,
                                  "end": 3298,
                                  "loc": {
                                    "start": {
                                      "line": 83,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 83,
                                      "column": 37
                                    }
                                  },
                                  "name": "i"
                                },
                                "computed": true
                              }
                            }
                          },
                          {
                            "type": "IfStatement",
                            "start": 3313,
                            "end": 3534,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 12
                              },
                              "end": {
                                "line": 88,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 3317,
                              "end": 3330,
                              "loc": {
                                "start": {
                                  "line": 84,
                                  "column": 16
                                },
                                "end": {
                                  "line": 84,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 3317,
                                "end": 3322,
                                "loc": {
                                  "start": {
                                    "line": 84,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 84,
                                    "column": 21
                                  }
                                },
                                "name": "child"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3323,
                                "end": 3330,
                                "loc": {
                                  "start": {
                                    "line": 84,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 84,
                                    "column": 29
                                  }
                                },
                                "name": "visible"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 3332,
                              "end": 3534,
                              "loc": {
                                "start": {
                                  "line": 84,
                                  "column": 31
                                },
                                "end": {
                                  "line": 88,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 3350,
                                  "end": 3425,
                                  "loc": {
                                    "start": {
                                      "line": 85,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 85,
                                      "column": 91
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 3350,
                                    "end": 3424,
                                    "loc": {
                                      "start": {
                                        "line": 85,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 85,
                                        "column": 90
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 3350,
                                      "end": 3357,
                                      "loc": {
                                        "start": {
                                          "line": 85,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 85,
                                          "column": 23
                                        }
                                      },
                                      "name": "changes"
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 3360,
                                      "end": 3424,
                                      "loc": {
                                        "start": {
                                          "line": 85,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 85,
                                          "column": 90
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 3360,
                                        "end": 3367,
                                        "loc": {
                                          "start": {
                                            "line": 85,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 85,
                                            "column": 33
                                          }
                                        },
                                        "name": "changes"
                                      },
                                      "operator": "|",
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 3370,
                                        "end": 3424,
                                        "loc": {
                                          "start": {
                                            "line": 85,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 85,
                                            "column": 90
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 3370,
                                          "end": 3384,
                                          "loc": {
                                            "start": {
                                              "line": 85,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 85,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 3370,
                                            "end": 3374,
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 40
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 3375,
                                            "end": 3384,
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 50
                                              }
                                            },
                                            "name": "intersect"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 3385,
                                            "end": 3390,
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 56
                                              }
                                            },
                                            "name": "child"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 3392,
                                            "end": 3396,
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 62
                                              }
                                            },
                                            "value": true,
                                            "rawValue": true,
                                            "raw": "true"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 3398,
                                            "end": 3408,
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 74
                                              }
                                            },
                                            "name": "intersects"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 3410,
                                            "end": 3415,
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 81
                                              }
                                            },
                                            "name": "types"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 3417,
                                            "end": 3423,
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 83
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 89
                                              }
                                            },
                                            "name": "parent"
                                          }
                                        ]
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 3442,
                                  "end": 3520,
                                  "loc": {
                                    "start": {
                                      "line": 86,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 32
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 3446,
                                    "end": 3486,
                                    "loc": {
                                      "start": {
                                        "line": 86,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 86,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 3446,
                                      "end": 3453,
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 27
                                        }
                                      },
                                      "name": "changes"
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 3457,
                                      "end": 3486,
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 60
                                        }
                                      },
                                      "operator": "!",
                                      "prefix": true,
                                      "argument": {
                                        "type": "MemberExpression",
                                        "start": 3458,
                                        "end": 3486,
                                        "loc": {
                                          "start": {
                                            "line": 86,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 86,
                                            "column": 60
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 3458,
                                          "end": 3476,
                                          "loc": {
                                            "start": {
                                              "line": 86,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 86,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 3458,
                                            "end": 3464,
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 38
                                              }
                                            },
                                            "name": "parent"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 3465,
                                            "end": 3476,
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 50
                                              }
                                            },
                                            "name": "interaction"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 3477,
                                          "end": 3486,
                                          "loc": {
                                            "start": {
                                              "line": 86,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 86,
                                              "column": 60
                                            }
                                          },
                                          "name": "recursive"
                                        },
                                        "computed": false
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 3508,
                                    "end": 3520,
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 32
                                      }
                                    },
                                    "argument": {
                                      "type": "Literal",
                                      "start": 3515,
                                      "end": 3519,
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 31
                                        }
                                      },
                                      "value": true,
                                      "rawValue": true,
                                      "raw": "true"
                                    }
                                  },
                                  "alternate": null
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 3554,
                      "end": 3569,
                      "loc": {
                        "start": {
                          "line": 91,
                          "column": 8
                        },
                        "end": {
                          "line": 91,
                          "column": 23
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 3561,
                        "end": 3568,
                        "loc": {
                          "start": {
                            "line": 91,
                            "column": 15
                          },
                          "end": {
                            "line": 91,
                            "column": 22
                          }
                        },
                        "name": "changes"
                      }
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [],
        "trailingComments": []
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 3579,
      "end": 3880,
      "loc": {
        "start": {
          "line": 95,
          "column": 0
        },
        "end": {
          "line": 99,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 3579,
        "end": 3880,
        "loc": {
          "start": {
            "line": 95,
            "column": 0
          },
          "end": {
            "line": 99,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 3579,
          "end": 3597,
          "loc": {
            "start": {
              "line": 95,
              "column": 0
            },
            "end": {
              "line": 95,
              "column": 18
            }
          },
          "object": {
            "type": "Identifier",
            "start": 3579,
            "end": 3588,
            "loc": {
              "start": {
                "line": 95,
                "column": 0
              },
              "end": {
                "line": 95,
                "column": 9
              }
            },
            "name": "Raycaster"
          },
          "property": {
            "type": "Identifier",
            "start": 3589,
            "end": 3597,
            "loc": {
              "start": {
                "line": 95,
                "column": 10
              },
              "end": {
                "line": 95,
                "column": 18
              }
            },
            "name": "Approach"
          },
          "computed": false
        },
        "right": {
          "type": "ObjectExpression",
          "start": 3600,
          "end": 3880,
          "loc": {
            "start": {
              "line": 95,
              "column": 21
            },
            "end": {
              "line": 99,
              "column": 1
            }
          },
          "properties": [
            {
              "type": "Property",
              "start": 3606,
              "end": 3624,
              "loc": {
                "start": {
                  "line": 96,
                  "column": 4
                },
                "end": {
                  "line": 96,
                  "column": 22
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3606,
                "end": 3613,
                "loc": {
                  "start": {
                    "line": 96,
                    "column": 4
                  },
                  "end": {
                    "line": 96,
                    "column": 11
                  }
                },
                "name": "Default"
              },
              "value": {
                "type": "Literal",
                "start": 3615,
                "end": 3624,
                "loc": {
                  "start": {
                    "line": 96,
                    "column": 13
                  },
                  "end": {
                    "line": 96,
                    "column": 22
                  }
                },
                "value": "Default",
                "rawValue": "Default",
                "raw": "'Default'"
              },
              "kind": "init"
            },
            {
              "type": "Property",
              "start": 3687,
              "end": 3701,
              "loc": {
                "start": {
                  "line": 97,
                  "column": 4
                },
                "end": {
                  "line": 97,
                  "column": 18
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3687,
                "end": 3692,
                "loc": {
                  "start": {
                    "line": 97,
                    "column": 4
                  },
                  "end": {
                    "line": 97,
                    "column": 9
                  }
                },
                "name": "First",
                "leadingComments": null
              },
              "value": {
                "type": "Literal",
                "start": 3694,
                "end": 3701,
                "loc": {
                  "start": {
                    "line": 97,
                    "column": 11
                  },
                  "end": {
                    "line": 97,
                    "column": 18
                  }
                },
                "value": "First",
                "rawValue": "First",
                "raw": "'First'"
              },
              "kind": "init",
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Precision: +++, Speed: -  , THREE.js default approach",
                  "start": 3626,
                  "end": 3682,
                  "loc": {
                    "start": {
                      "line": 96,
                      "column": 24
                    },
                    "end": {
                      "line": 96,
                      "column": 80
                    }
                  },
                  "range": [
                    3626,
                    3682
                  ]
                }
              ]
            },
            {
              "type": "Property",
              "start": 3809,
              "end": 3825,
              "loc": {
                "start": {
                  "line": 98,
                  "column": 4
                },
                "end": {
                  "line": 98,
                  "column": 20
                }
              },
              "method": false,
              "shorthand": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3809,
                "end": 3815,
                "loc": {
                  "start": {
                    "line": 98,
                    "column": 4
                  },
                  "end": {
                    "line": 98,
                    "column": 10
                  }
                },
                "name": "Bounds",
                "leadingComments": null
              },
              "value": {
                "type": "Literal",
                "start": 3817,
                "end": 3825,
                "loc": {
                  "start": {
                    "line": 98,
                    "column": 12
                  },
                  "end": {
                    "line": 98,
                    "column": 20
                  }
                },
                "value": "Bounds",
                "rawValue": "Bounds",
                "raw": "'Bounds'",
                "leadingComments": null,
                "trailingComments": null
              },
              "kind": "init",
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Precision: +  , Speed: +  , First vertex found, may be the back-side vertex (affects distance)",
                  "start": 3707,
                  "end": 3804,
                  "loc": {
                    "start": {
                      "line": 97,
                      "column": 24
                    },
                    "end": {
                      "line": 97,
                      "column": 121
                    }
                  },
                  "range": [
                    3707,
                    3804
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Precision: -  , Speed: +++, Checks bounds only",
                  "start": 3829,
                  "end": 3878,
                  "loc": {
                    "start": {
                      "line": 98,
                      "column": 24
                    },
                    "end": {
                      "line": 98,
                      "column": 73
                    }
                  },
                  "range": [
                    3829,
                    3878
                  ]
                }
              ]
            }
          ]
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "start": 3882,
      "end": 4243,
      "loc": {
        "start": {
          "line": 101,
          "column": 0
        },
        "end": {
          "line": 108,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 3891,
        "end": 3905,
        "loc": {
          "start": {
            "line": 101,
            "column": 9
          },
          "end": {
            "line": 101,
            "column": 23
          }
        },
        "name": "uvIntersection",
        "leadingComments": null
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 3907,
          "end": 3916,
          "loc": {
            "start": {
              "line": 101,
              "column": 25
            },
            "end": {
              "line": 101,
              "column": 34
            }
          },
          "name": "raycaster"
        },
        {
          "type": "Identifier",
          "start": 3918,
          "end": 3923,
          "loc": {
            "start": {
              "line": 101,
              "column": 36
            },
            "end": {
              "line": 101,
              "column": 41
            }
          },
          "name": "point"
        },
        {
          "type": "Identifier",
          "start": 3925,
          "end": 3927,
          "loc": {
            "start": {
              "line": 101,
              "column": 43
            },
            "end": {
              "line": 101,
              "column": 45
            }
          },
          "name": "p1"
        },
        {
          "type": "Identifier",
          "start": 3929,
          "end": 3931,
          "loc": {
            "start": {
              "line": 101,
              "column": 47
            },
            "end": {
              "line": 101,
              "column": 49
            }
          },
          "name": "p2"
        },
        {
          "type": "Identifier",
          "start": 3933,
          "end": 3935,
          "loc": {
            "start": {
              "line": 101,
              "column": 51
            },
            "end": {
              "line": 101,
              "column": 53
            }
          },
          "name": "p3"
        },
        {
          "type": "Identifier",
          "start": 3937,
          "end": 3940,
          "loc": {
            "start": {
              "line": 101,
              "column": 55
            },
            "end": {
              "line": 101,
              "column": 58
            }
          },
          "name": "uv1"
        },
        {
          "type": "Identifier",
          "start": 3942,
          "end": 3945,
          "loc": {
            "start": {
              "line": 101,
              "column": 60
            },
            "end": {
              "line": 101,
              "column": 63
            }
          },
          "name": "uv2"
        },
        {
          "type": "Identifier",
          "start": 3947,
          "end": 3950,
          "loc": {
            "start": {
              "line": 101,
              "column": 65
            },
            "end": {
              "line": 101,
              "column": 68
            }
          },
          "name": "uv3"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 3953,
        "end": 4243,
        "loc": {
          "start": {
            "line": 101,
            "column": 71
          },
          "end": {
            "line": 108,
            "column": 1
          }
        },
        "body": [
          {
            "type": "ExpressionStatement",
            "start": 3959,
            "end": 4036,
            "loc": {
              "start": {
                "line": 102,
                "column": 4
              },
              "end": {
                "line": 102,
                "column": 81
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 3959,
              "end": 4035,
              "loc": {
                "start": {
                  "line": 102,
                  "column": 4
                },
                "end": {
                  "line": 102,
                  "column": 80
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 3959,
                "end": 3992,
                "loc": {
                  "start": {
                    "line": 102,
                    "column": 4
                  },
                  "end": {
                    "line": 102,
                    "column": 37
                  }
                },
                "object": {
                  "type": "MemberExpression",
                  "start": 3959,
                  "end": 3973,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 4
                    },
                    "end": {
                      "line": 102,
                      "column": 18
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 3959,
                    "end": 3964,
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 4
                      },
                      "end": {
                        "line": 102,
                        "column": 9
                      }
                    },
                    "name": "THREE"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 3965,
                    "end": 3973,
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 10
                      },
                      "end": {
                        "line": 102,
                        "column": 18
                      }
                    },
                    "name": "Triangle"
                  },
                  "computed": false
                },
                "property": {
                  "type": "Identifier",
                  "start": 3974,
                  "end": 3992,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 19
                    },
                    "end": {
                      "line": 102,
                      "column": 37
                    }
                  },
                  "name": "barycoordFromPoint"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "start": 3994,
                  "end": 3999,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 39
                    },
                    "end": {
                      "line": 102,
                      "column": 44
                    }
                  },
                  "name": "point"
                },
                {
                  "type": "Identifier",
                  "start": 4001,
                  "end": 4003,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 46
                    },
                    "end": {
                      "line": 102,
                      "column": 48
                    }
                  },
                  "name": "p1"
                },
                {
                  "type": "Identifier",
                  "start": 4005,
                  "end": 4007,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 50
                    },
                    "end": {
                      "line": 102,
                      "column": 52
                    }
                  },
                  "name": "p2"
                },
                {
                  "type": "Identifier",
                  "start": 4009,
                  "end": 4011,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 54
                    },
                    "end": {
                      "line": 102,
                      "column": 56
                    }
                  },
                  "name": "p3"
                },
                {
                  "type": "MemberExpression",
                  "start": 4013,
                  "end": 4033,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 58
                    },
                    "end": {
                      "line": 102,
                      "column": 78
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 4013,
                    "end": 4022,
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 58
                      },
                      "end": {
                        "line": 102,
                        "column": 67
                      }
                    },
                    "name": "raycaster"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 4023,
                    "end": 4033,
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 68
                      },
                      "end": {
                        "line": 102,
                        "column": 78
                      }
                    },
                    "name": "_barycoord"
                  },
                  "computed": false
                }
              ]
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 4041,
            "end": 4086,
            "loc": {
              "start": {
                "line": 103,
                "column": 4
              },
              "end": {
                "line": 103,
                "column": 49
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 4041,
              "end": 4085,
              "loc": {
                "start": {
                  "line": 103,
                  "column": 4
                },
                "end": {
                  "line": 103,
                  "column": 48
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 4041,
                "end": 4059,
                "loc": {
                  "start": {
                    "line": 103,
                    "column": 4
                  },
                  "end": {
                    "line": 103,
                    "column": 22
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 4041,
                  "end": 4044,
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 4
                    },
                    "end": {
                      "line": 103,
                      "column": 7
                    }
                  },
                  "name": "uv1"
                },
                "property": {
                  "type": "Identifier",
                  "start": 4045,
                  "end": 4059,
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 8
                    },
                    "end": {
                      "line": 103,
                      "column": 22
                    }
                  },
                  "name": "multiplyScalar"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "MemberExpression",
                  "start": 4061,
                  "end": 4083,
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 24
                    },
                    "end": {
                      "line": 103,
                      "column": 46
                    }
                  },
                  "object": {
                    "type": "MemberExpression",
                    "start": 4061,
                    "end": 4081,
                    "loc": {
                      "start": {
                        "line": 103,
                        "column": 24
                      },
                      "end": {
                        "line": 103,
                        "column": 44
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4061,
                      "end": 4070,
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 24
                        },
                        "end": {
                          "line": 103,
                          "column": 33
                        }
                      },
                      "name": "raycaster"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4071,
                      "end": 4081,
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 34
                        },
                        "end": {
                          "line": 103,
                          "column": 44
                        }
                      },
                      "name": "_barycoord"
                    },
                    "computed": false
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 4082,
                    "end": 4083,
                    "loc": {
                      "start": {
                        "line": 103,
                        "column": 45
                      },
                      "end": {
                        "line": 103,
                        "column": 46
                      }
                    },
                    "name": "x"
                  },
                  "computed": false
                }
              ]
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 4091,
            "end": 4136,
            "loc": {
              "start": {
                "line": 104,
                "column": 4
              },
              "end": {
                "line": 104,
                "column": 49
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 4091,
              "end": 4135,
              "loc": {
                "start": {
                  "line": 104,
                  "column": 4
                },
                "end": {
                  "line": 104,
                  "column": 48
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 4091,
                "end": 4109,
                "loc": {
                  "start": {
                    "line": 104,
                    "column": 4
                  },
                  "end": {
                    "line": 104,
                    "column": 22
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 4091,
                  "end": 4094,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 4
                    },
                    "end": {
                      "line": 104,
                      "column": 7
                    }
                  },
                  "name": "uv2"
                },
                "property": {
                  "type": "Identifier",
                  "start": 4095,
                  "end": 4109,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 8
                    },
                    "end": {
                      "line": 104,
                      "column": 22
                    }
                  },
                  "name": "multiplyScalar"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "MemberExpression",
                  "start": 4111,
                  "end": 4133,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 24
                    },
                    "end": {
                      "line": 104,
                      "column": 46
                    }
                  },
                  "object": {
                    "type": "MemberExpression",
                    "start": 4111,
                    "end": 4131,
                    "loc": {
                      "start": {
                        "line": 104,
                        "column": 24
                      },
                      "end": {
                        "line": 104,
                        "column": 44
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4111,
                      "end": 4120,
                      "loc": {
                        "start": {
                          "line": 104,
                          "column": 24
                        },
                        "end": {
                          "line": 104,
                          "column": 33
                        }
                      },
                      "name": "raycaster"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4121,
                      "end": 4131,
                      "loc": {
                        "start": {
                          "line": 104,
                          "column": 34
                        },
                        "end": {
                          "line": 104,
                          "column": 44
                        }
                      },
                      "name": "_barycoord"
                    },
                    "computed": false
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 4132,
                    "end": 4133,
                    "loc": {
                      "start": {
                        "line": 104,
                        "column": 45
                      },
                      "end": {
                        "line": 104,
                        "column": 46
                      }
                    },
                    "name": "y"
                  },
                  "computed": false
                }
              ]
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 4141,
            "end": 4186,
            "loc": {
              "start": {
                "line": 105,
                "column": 4
              },
              "end": {
                "line": 105,
                "column": 49
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 4141,
              "end": 4185,
              "loc": {
                "start": {
                  "line": 105,
                  "column": 4
                },
                "end": {
                  "line": 105,
                  "column": 48
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 4141,
                "end": 4159,
                "loc": {
                  "start": {
                    "line": 105,
                    "column": 4
                  },
                  "end": {
                    "line": 105,
                    "column": 22
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 4141,
                  "end": 4144,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 4
                    },
                    "end": {
                      "line": 105,
                      "column": 7
                    }
                  },
                  "name": "uv3"
                },
                "property": {
                  "type": "Identifier",
                  "start": 4145,
                  "end": 4159,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 8
                    },
                    "end": {
                      "line": 105,
                      "column": 22
                    }
                  },
                  "name": "multiplyScalar"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "MemberExpression",
                  "start": 4161,
                  "end": 4183,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 24
                    },
                    "end": {
                      "line": 105,
                      "column": 46
                    }
                  },
                  "object": {
                    "type": "MemberExpression",
                    "start": 4161,
                    "end": 4181,
                    "loc": {
                      "start": {
                        "line": 105,
                        "column": 24
                      },
                      "end": {
                        "line": 105,
                        "column": 44
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4161,
                      "end": 4170,
                      "loc": {
                        "start": {
                          "line": 105,
                          "column": 24
                        },
                        "end": {
                          "line": 105,
                          "column": 33
                        }
                      },
                      "name": "raycaster"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4171,
                      "end": 4181,
                      "loc": {
                        "start": {
                          "line": 105,
                          "column": 34
                        },
                        "end": {
                          "line": 105,
                          "column": 44
                        }
                      },
                      "name": "_barycoord"
                    },
                    "computed": false
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 4182,
                    "end": 4183,
                    "loc": {
                      "start": {
                        "line": 105,
                        "column": 45
                      },
                      "end": {
                        "line": 105,
                        "column": 46
                      }
                    },
                    "name": "z"
                  },
                  "computed": false
                }
              ]
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 4191,
            "end": 4217,
            "loc": {
              "start": {
                "line": 106,
                "column": 4
              },
              "end": {
                "line": 106,
                "column": 30
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 4191,
              "end": 4216,
              "loc": {
                "start": {
                  "line": 106,
                  "column": 4
                },
                "end": {
                  "line": 106,
                  "column": 29
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 4191,
                "end": 4209,
                "loc": {
                  "start": {
                    "line": 106,
                    "column": 4
                  },
                  "end": {
                    "line": 106,
                    "column": 22
                  }
                },
                "object": {
                  "type": "CallExpression",
                  "start": 4191,
                  "end": 4205,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 4
                    },
                    "end": {
                      "line": 106,
                      "column": 18
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 4191,
                    "end": 4198,
                    "loc": {
                      "start": {
                        "line": 106,
                        "column": 4
                      },
                      "end": {
                        "line": 106,
                        "column": 11
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 4191,
                      "end": 4194,
                      "loc": {
                        "start": {
                          "line": 106,
                          "column": 4
                        },
                        "end": {
                          "line": 106,
                          "column": 7
                        }
                      },
                      "name": "uv1"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4195,
                      "end": 4198,
                      "loc": {
                        "start": {
                          "line": 106,
                          "column": 8
                        },
                        "end": {
                          "line": 106,
                          "column": 11
                        }
                      },
                      "name": "add"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 4200,
                      "end": 4203,
                      "loc": {
                        "start": {
                          "line": 106,
                          "column": 13
                        },
                        "end": {
                          "line": 106,
                          "column": 16
                        }
                      },
                      "name": "uv2"
                    }
                  ]
                },
                "property": {
                  "type": "Identifier",
                  "start": 4206,
                  "end": 4209,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 19
                    },
                    "end": {
                      "line": 106,
                      "column": 22
                    }
                  },
                  "name": "add"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "start": 4211,
                  "end": 4214,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 24
                    },
                    "end": {
                      "line": 106,
                      "column": 27
                    }
                  },
                  "name": "uv3"
                }
              ]
            }
          },
          {
            "type": "ReturnStatement",
            "start": 4222,
            "end": 4241,
            "loc": {
              "start": {
                "line": 107,
                "column": 4
              },
              "end": {
                "line": 107,
                "column": 23
              }
            },
            "argument": {
              "type": "CallExpression",
              "start": 4229,
              "end": 4240,
              "loc": {
                "start": {
                  "line": 107,
                  "column": 11
                },
                "end": {
                  "line": 107,
                  "column": 22
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 4229,
                "end": 4238,
                "loc": {
                  "start": {
                    "line": 107,
                    "column": 11
                  },
                  "end": {
                    "line": 107,
                    "column": 20
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 4229,
                  "end": 4232,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 11
                    },
                    "end": {
                      "line": 107,
                      "column": 14
                    }
                  },
                  "name": "uv1"
                },
                "property": {
                  "type": "Identifier",
                  "start": 4233,
                  "end": 4238,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 15
                    },
                    "end": {
                      "line": 107,
                      "column": 20
                    }
                  },
                  "name": "clone"
                },
                "computed": false
              },
              "arguments": []
            }
          }
        ]
      },
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": " Precision: -  , Speed: +++, Checks bounds only",
          "start": 3829,
          "end": 3878,
          "loc": {
            "start": {
              "line": 98,
              "column": 24
            },
            "end": {
              "line": 98,
              "column": 73
            }
          },
          "range": [
            3829,
            3878
          ]
        }
      ]
    },
    {
      "type": "FunctionDeclaration",
      "start": 4245,
      "end": 5076,
      "loc": {
        "start": {
          "line": 110,
          "column": 0
        },
        "end": {
          "line": 128,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 4254,
        "end": 4271,
        "loc": {
          "start": {
            "line": 110,
            "column": 9
          },
          "end": {
            "line": 110,
            "column": 26
          }
        },
        "name": "checkIntersection"
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 4273,
          "end": 4279,
          "loc": {
            "start": {
              "line": 110,
              "column": 28
            },
            "end": {
              "line": 110,
              "column": 34
            }
          },
          "name": "object"
        },
        {
          "type": "Identifier",
          "start": 4281,
          "end": 4290,
          "loc": {
            "start": {
              "line": 110,
              "column": 36
            },
            "end": {
              "line": 110,
              "column": 45
            }
          },
          "name": "raycaster"
        },
        {
          "type": "Identifier",
          "start": 4292,
          "end": 4295,
          "loc": {
            "start": {
              "line": 110,
              "column": 47
            },
            "end": {
              "line": 110,
              "column": 50
            }
          },
          "name": "ray"
        },
        {
          "type": "Identifier",
          "start": 4297,
          "end": 4299,
          "loc": {
            "start": {
              "line": 110,
              "column": 52
            },
            "end": {
              "line": 110,
              "column": 54
            }
          },
          "name": "pA"
        },
        {
          "type": "Identifier",
          "start": 4301,
          "end": 4303,
          "loc": {
            "start": {
              "line": 110,
              "column": 56
            },
            "end": {
              "line": 110,
              "column": 58
            }
          },
          "name": "pB"
        },
        {
          "type": "Identifier",
          "start": 4305,
          "end": 4307,
          "loc": {
            "start": {
              "line": 110,
              "column": 60
            },
            "end": {
              "line": 110,
              "column": 62
            }
          },
          "name": "pC"
        },
        {
          "type": "Identifier",
          "start": 4309,
          "end": 4314,
          "loc": {
            "start": {
              "line": 110,
              "column": 64
            },
            "end": {
              "line": 110,
              "column": 69
            }
          },
          "name": "point"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 4317,
        "end": 5076,
        "loc": {
          "start": {
            "line": 110,
            "column": 72
          },
          "end": {
            "line": 128,
            "column": 1
          }
        },
        "body": [
          {
            "type": "VariableDeclaration",
            "start": 4323,
            "end": 4337,
            "loc": {
              "start": {
                "line": 111,
                "column": 4
              },
              "end": {
                "line": 111,
                "column": 18
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 4327,
                "end": 4336,
                "loc": {
                  "start": {
                    "line": 111,
                    "column": 8
                  },
                  "end": {
                    "line": 111,
                    "column": 17
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 4327,
                  "end": 4336,
                  "loc": {
                    "start": {
                      "line": 111,
                      "column": 8
                    },
                    "end": {
                      "line": 111,
                      "column": 17
                    }
                  },
                  "name": "intersect"
                },
                "init": null
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 4342,
            "end": 4373,
            "loc": {
              "start": {
                "line": 112,
                "column": 4
              },
              "end": {
                "line": 112,
                "column": 35
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 4346,
                "end": 4372,
                "loc": {
                  "start": {
                    "line": 112,
                    "column": 8
                  },
                  "end": {
                    "line": 112,
                    "column": 34
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 4346,
                  "end": 4354,
                  "loc": {
                    "start": {
                      "line": 112,
                      "column": 8
                    },
                    "end": {
                      "line": 112,
                      "column": 16
                    }
                  },
                  "name": "material"
                },
                "init": {
                  "type": "MemberExpression",
                  "start": 4357,
                  "end": 4372,
                  "loc": {
                    "start": {
                      "line": 112,
                      "column": 19
                    },
                    "end": {
                      "line": 112,
                      "column": 34
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 4357,
                    "end": 4363,
                    "loc": {
                      "start": {
                        "line": 112,
                        "column": 19
                      },
                      "end": {
                        "line": 112,
                        "column": 25
                      }
                    },
                    "name": "object"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 4364,
                    "end": 4372,
                    "loc": {
                      "start": {
                        "line": 112,
                        "column": 26
                      },
                      "end": {
                        "line": 112,
                        "column": 34
                      }
                    },
                    "name": "material"
                  },
                  "computed": false
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "IfStatement",
            "start": 4378,
            "end": 4608,
            "loc": {
              "start": {
                "line": 113,
                "column": 4
              },
              "end": {
                "line": 117,
                "column": 5
              }
            },
            "test": {
              "type": "BinaryExpression",
              "start": 4383,
              "end": 4415,
              "loc": {
                "start": {
                  "line": 113,
                  "column": 9
                },
                "end": {
                  "line": 113,
                  "column": 41
                }
              },
              "left": {
                "type": "MemberExpression",
                "start": 4383,
                "end": 4396,
                "loc": {
                  "start": {
                    "line": 113,
                    "column": 9
                  },
                  "end": {
                    "line": 113,
                    "column": 22
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 4383,
                  "end": 4391,
                  "loc": {
                    "start": {
                      "line": 113,
                      "column": 9
                    },
                    "end": {
                      "line": 113,
                      "column": 17
                    }
                  },
                  "name": "material"
                },
                "property": {
                  "type": "Identifier",
                  "start": 4392,
                  "end": 4396,
                  "loc": {
                    "start": {
                      "line": 113,
                      "column": 18
                    },
                    "end": {
                      "line": 113,
                      "column": 22
                    }
                  },
                  "name": "side"
                },
                "computed": false
              },
              "operator": "===",
              "right": {
                "type": "MemberExpression",
                "start": 4401,
                "end": 4415,
                "loc": {
                  "start": {
                    "line": 113,
                    "column": 27
                  },
                  "end": {
                    "line": 113,
                    "column": 41
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 4401,
                  "end": 4406,
                  "loc": {
                    "start": {
                      "line": 113,
                      "column": 27
                    },
                    "end": {
                      "line": 113,
                      "column": 32
                    }
                  },
                  "name": "THREE"
                },
                "property": {
                  "type": "Identifier",
                  "start": 4407,
                  "end": 4415,
                  "loc": {
                    "start": {
                      "line": 113,
                      "column": 33
                    },
                    "end": {
                      "line": 113,
                      "column": 41
                    }
                  },
                  "name": "BackSide"
                },
                "computed": false
              }
            },
            "consequent": {
              "type": "BlockStatement",
              "start": 4418,
              "end": 4495,
              "loc": {
                "start": {
                  "line": 113,
                  "column": 44
                },
                "end": {
                  "line": 115,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "ExpressionStatement",
                  "start": 4428,
                  "end": 4489,
                  "loc": {
                    "start": {
                      "line": 114,
                      "column": 8
                    },
                    "end": {
                      "line": 114,
                      "column": 69
                    }
                  },
                  "expression": {
                    "type": "AssignmentExpression",
                    "start": 4428,
                    "end": 4488,
                    "loc": {
                      "start": {
                        "line": 114,
                        "column": 8
                      },
                      "end": {
                        "line": 114,
                        "column": 68
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 4428,
                      "end": 4437,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 8
                        },
                        "end": {
                          "line": 114,
                          "column": 17
                        }
                      },
                      "name": "intersect"
                    },
                    "right": {
                      "type": "CallExpression",
                      "start": 4440,
                      "end": 4488,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 20
                        },
                        "end": {
                          "line": 114,
                          "column": 68
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 4440,
                        "end": 4461,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 20
                          },
                          "end": {
                            "line": 114,
                            "column": 41
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 4440,
                          "end": 4443,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 20
                            },
                            "end": {
                              "line": 114,
                              "column": 23
                            }
                          },
                          "name": "ray"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4444,
                          "end": 4461,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 24
                            },
                            "end": {
                              "line": 114,
                              "column": 41
                            }
                          },
                          "name": "intersectTriangle"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 4463,
                          "end": 4465,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 43
                            },
                            "end": {
                              "line": 114,
                              "column": 45
                            }
                          },
                          "name": "pC"
                        },
                        {
                          "type": "Identifier",
                          "start": 4467,
                          "end": 4469,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 47
                            },
                            "end": {
                              "line": 114,
                              "column": 49
                            }
                          },
                          "name": "pB"
                        },
                        {
                          "type": "Identifier",
                          "start": 4471,
                          "end": 4473,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 51
                            },
                            "end": {
                              "line": 114,
                              "column": 53
                            }
                          },
                          "name": "pA"
                        },
                        {
                          "type": "Literal",
                          "start": 4475,
                          "end": 4479,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 55
                            },
                            "end": {
                              "line": 114,
                              "column": 59
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        {
                          "type": "Identifier",
                          "start": 4481,
                          "end": 4486,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 61
                            },
                            "end": {
                              "line": 114,
                              "column": 66
                            }
                          },
                          "name": "point"
                        }
                      ]
                    }
                  }
                }
              ]
            },
            "alternate": {
              "type": "BlockStatement",
              "start": 4501,
              "end": 4608,
              "loc": {
                "start": {
                  "line": 115,
                  "column": 11
                },
                "end": {
                  "line": 117,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "ExpressionStatement",
                  "start": 4511,
                  "end": 4602,
                  "loc": {
                    "start": {
                      "line": 116,
                      "column": 8
                    },
                    "end": {
                      "line": 116,
                      "column": 99
                    }
                  },
                  "expression": {
                    "type": "AssignmentExpression",
                    "start": 4511,
                    "end": 4601,
                    "loc": {
                      "start": {
                        "line": 116,
                        "column": 8
                      },
                      "end": {
                        "line": 116,
                        "column": 98
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 4511,
                      "end": 4520,
                      "loc": {
                        "start": {
                          "line": 116,
                          "column": 8
                        },
                        "end": {
                          "line": 116,
                          "column": 17
                        }
                      },
                      "name": "intersect"
                    },
                    "right": {
                      "type": "CallExpression",
                      "start": 4523,
                      "end": 4601,
                      "loc": {
                        "start": {
                          "line": 116,
                          "column": 20
                        },
                        "end": {
                          "line": 116,
                          "column": 98
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 4523,
                        "end": 4544,
                        "loc": {
                          "start": {
                            "line": 116,
                            "column": 20
                          },
                          "end": {
                            "line": 116,
                            "column": 41
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 4523,
                          "end": 4526,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 20
                            },
                            "end": {
                              "line": 116,
                              "column": 23
                            }
                          },
                          "name": "ray"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4527,
                          "end": 4544,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 24
                            },
                            "end": {
                              "line": 116,
                              "column": 41
                            }
                          },
                          "name": "intersectTriangle"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 4546,
                          "end": 4548,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 43
                            },
                            "end": {
                              "line": 116,
                              "column": 45
                            }
                          },
                          "name": "pA"
                        },
                        {
                          "type": "Identifier",
                          "start": 4550,
                          "end": 4552,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 47
                            },
                            "end": {
                              "line": 116,
                              "column": 49
                            }
                          },
                          "name": "pB"
                        },
                        {
                          "type": "Identifier",
                          "start": 4554,
                          "end": 4556,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 51
                            },
                            "end": {
                              "line": 116,
                              "column": 53
                            }
                          },
                          "name": "pC"
                        },
                        {
                          "type": "BinaryExpression",
                          "start": 4558,
                          "end": 4592,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 55
                            },
                            "end": {
                              "line": 116,
                              "column": 89
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 4558,
                            "end": 4571,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 55
                              },
                              "end": {
                                "line": 116,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 4558,
                              "end": 4566,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 55
                                },
                                "end": {
                                  "line": 116,
                                  "column": 63
                                }
                              },
                              "name": "material"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4567,
                              "end": 4571,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 64
                                },
                                "end": {
                                  "line": 116,
                                  "column": 68
                                }
                              },
                              "name": "side"
                            },
                            "computed": false
                          },
                          "operator": "!==",
                          "right": {
                            "type": "MemberExpression",
                            "start": 4576,
                            "end": 4592,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 73
                              },
                              "end": {
                                "line": 116,
                                "column": 89
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 4576,
                              "end": 4581,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 73
                                },
                                "end": {
                                  "line": 116,
                                  "column": 78
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4582,
                              "end": 4592,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 79
                                },
                                "end": {
                                  "line": 116,
                                  "column": 89
                                }
                              },
                              "name": "DoubleSide"
                            },
                            "computed": false
                          }
                        },
                        {
                          "type": "Identifier",
                          "start": 4594,
                          "end": 4599,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 91
                            },
                            "end": {
                              "line": 116,
                              "column": 96
                            }
                          },
                          "name": "point"
                        }
                      ]
                    }
                  }
                }
              ]
            }
          },
          {
            "type": "IfStatement",
            "start": 4613,
            "end": 4651,
            "loc": {
              "start": {
                "line": 118,
                "column": 4
              },
              "end": {
                "line": 118,
                "column": 42
              }
            },
            "test": {
              "type": "BinaryExpression",
              "start": 4618,
              "end": 4636,
              "loc": {
                "start": {
                  "line": 118,
                  "column": 9
                },
                "end": {
                  "line": 118,
                  "column": 27
                }
              },
              "left": {
                "type": "Identifier",
                "start": 4618,
                "end": 4627,
                "loc": {
                  "start": {
                    "line": 118,
                    "column": 9
                  },
                  "end": {
                    "line": 118,
                    "column": 18
                  }
                },
                "name": "intersect"
              },
              "operator": "===",
              "right": {
                "type": "Literal",
                "start": 4632,
                "end": 4636,
                "loc": {
                  "start": {
                    "line": 118,
                    "column": 23
                  },
                  "end": {
                    "line": 118,
                    "column": 27
                  }
                },
                "value": null,
                "rawValue": null,
                "raw": "null"
              }
            },
            "consequent": {
              "type": "ReturnStatement",
              "start": 4639,
              "end": 4651,
              "loc": {
                "start": {
                  "line": 118,
                  "column": 30
                },
                "end": {
                  "line": 118,
                  "column": 42
                }
              },
              "argument": {
                "type": "Literal",
                "start": 4646,
                "end": 4650,
                "loc": {
                  "start": {
                    "line": 118,
                    "column": 37
                  },
                  "end": {
                    "line": 118,
                    "column": 41
                  }
                },
                "value": null,
                "rawValue": null,
                "raw": "null"
              }
            },
            "alternate": null
          },
          {
            "type": "ExpressionStatement",
            "start": 4656,
            "end": 4704,
            "loc": {
              "start": {
                "line": 119,
                "column": 4
              },
              "end": {
                "line": 119,
                "column": 52
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 4656,
              "end": 4703,
              "loc": {
                "start": {
                  "line": 119,
                  "column": 4
                },
                "end": {
                  "line": 119,
                  "column": 51
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 4656,
                "end": 4694,
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 4
                  },
                  "end": {
                    "line": 119,
                    "column": 42
                  }
                },
                "object": {
                  "type": "MemberExpression",
                  "start": 4656,
                  "end": 4689,
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 4
                    },
                    "end": {
                      "line": 119,
                      "column": 37
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 4656,
                    "end": 4665,
                    "loc": {
                      "start": {
                        "line": 119,
                        "column": 4
                      },
                      "end": {
                        "line": 119,
                        "column": 13
                      }
                    },
                    "name": "raycaster"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 4666,
                    "end": 4689,
                    "loc": {
                      "start": {
                        "line": 119,
                        "column": 14
                      },
                      "end": {
                        "line": 119,
                        "column": 37
                      }
                    },
                    "name": "_intersectionPointWorld"
                  },
                  "computed": false
                },
                "property": {
                  "type": "Identifier",
                  "start": 4690,
                  "end": 4694,
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 38
                    },
                    "end": {
                      "line": 119,
                      "column": 42
                    }
                  },
                  "name": "copy"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "start": 4696,
                  "end": 4701,
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 44
                    },
                    "end": {
                      "line": 119,
                      "column": 49
                    }
                  },
                  "name": "point"
                }
              ]
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 4709,
            "end": 4778,
            "loc": {
              "start": {
                "line": 120,
                "column": 4
              },
              "end": {
                "line": 120,
                "column": 73
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 4709,
              "end": 4777,
              "loc": {
                "start": {
                  "line": 120,
                  "column": 4
                },
                "end": {
                  "line": 120,
                  "column": 72
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 4709,
                "end": 4755,
                "loc": {
                  "start": {
                    "line": 120,
                    "column": 4
                  },
                  "end": {
                    "line": 120,
                    "column": 50
                  }
                },
                "object": {
                  "type": "MemberExpression",
                  "start": 4709,
                  "end": 4742,
                  "loc": {
                    "start": {
                      "line": 120,
                      "column": 4
                    },
                    "end": {
                      "line": 120,
                      "column": 37
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 4709,
                    "end": 4718,
                    "loc": {
                      "start": {
                        "line": 120,
                        "column": 4
                      },
                      "end": {
                        "line": 120,
                        "column": 13
                      }
                    },
                    "name": "raycaster"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 4719,
                    "end": 4742,
                    "loc": {
                      "start": {
                        "line": 120,
                        "column": 14
                      },
                      "end": {
                        "line": 120,
                        "column": 37
                      }
                    },
                    "name": "_intersectionPointWorld"
                  },
                  "computed": false
                },
                "property": {
                  "type": "Identifier",
                  "start": 4743,
                  "end": 4755,
                  "loc": {
                    "start": {
                      "line": 120,
                      "column": 38
                    },
                    "end": {
                      "line": 120,
                      "column": 50
                    }
                  },
                  "name": "applyMatrix4"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "MemberExpression",
                  "start": 4757,
                  "end": 4775,
                  "loc": {
                    "start": {
                      "line": 120,
                      "column": 52
                    },
                    "end": {
                      "line": 120,
                      "column": 70
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 4757,
                    "end": 4763,
                    "loc": {
                      "start": {
                        "line": 120,
                        "column": 52
                      },
                      "end": {
                        "line": 120,
                        "column": 58
                      }
                    },
                    "name": "object"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 4764,
                    "end": 4775,
                    "loc": {
                      "start": {
                        "line": 120,
                        "column": 59
                      },
                      "end": {
                        "line": 120,
                        "column": 70
                      }
                    },
                    "name": "matrixWorld"
                  },
                  "computed": false
                }
              ]
            }
          },
          {
            "type": "VariableDeclaration",
            "start": 4783,
            "end": 4867,
            "loc": {
              "start": {
                "line": 121,
                "column": 4
              },
              "end": {
                "line": 121,
                "column": 88
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 4787,
                "end": 4866,
                "loc": {
                  "start": {
                    "line": 121,
                    "column": 8
                  },
                  "end": {
                    "line": 121,
                    "column": 87
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 4787,
                  "end": 4795,
                  "loc": {
                    "start": {
                      "line": 121,
                      "column": 8
                    },
                    "end": {
                      "line": 121,
                      "column": 16
                    }
                  },
                  "name": "distance"
                },
                "init": {
                  "type": "CallExpression",
                  "start": 4798,
                  "end": 4866,
                  "loc": {
                    "start": {
                      "line": 121,
                      "column": 19
                    },
                    "end": {
                      "line": 121,
                      "column": 87
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 4798,
                    "end": 4829,
                    "loc": {
                      "start": {
                        "line": 121,
                        "column": 19
                      },
                      "end": {
                        "line": 121,
                        "column": 50
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 4798,
                      "end": 4818,
                      "loc": {
                        "start": {
                          "line": 121,
                          "column": 19
                        },
                        "end": {
                          "line": 121,
                          "column": 39
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 4798,
                        "end": 4811,
                        "loc": {
                          "start": {
                            "line": 121,
                            "column": 19
                          },
                          "end": {
                            "line": 121,
                            "column": 32
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 4798,
                          "end": 4807,
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 19
                            },
                            "end": {
                              "line": 121,
                              "column": 28
                            }
                          },
                          "name": "raycaster"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4808,
                          "end": 4811,
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 29
                            },
                            "end": {
                              "line": 121,
                              "column": 32
                            }
                          },
                          "name": "ray"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4812,
                        "end": 4818,
                        "loc": {
                          "start": {
                            "line": 121,
                            "column": 33
                          },
                          "end": {
                            "line": 121,
                            "column": 39
                          }
                        },
                        "name": "origin"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 4819,
                      "end": 4829,
                      "loc": {
                        "start": {
                          "line": 121,
                          "column": 40
                        },
                        "end": {
                          "line": 121,
                          "column": 50
                        }
                      },
                      "name": "distanceTo"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "MemberExpression",
                      "start": 4831,
                      "end": 4864,
                      "loc": {
                        "start": {
                          "line": 121,
                          "column": 52
                        },
                        "end": {
                          "line": 121,
                          "column": 85
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 4831,
                        "end": 4840,
                        "loc": {
                          "start": {
                            "line": 121,
                            "column": 52
                          },
                          "end": {
                            "line": 121,
                            "column": 61
                          }
                        },
                        "name": "raycaster"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 4841,
                        "end": 4864,
                        "loc": {
                          "start": {
                            "line": 121,
                            "column": 62
                          },
                          "end": {
                            "line": 121,
                            "column": 85
                          }
                        },
                        "name": "_intersectionPointWorld"
                      },
                      "computed": false
                    }
                  ]
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "IfStatement",
            "start": 4872,
            "end": 4945,
            "loc": {
              "start": {
                "line": 122,
                "column": 4
              },
              "end": {
                "line": 122,
                "column": 77
              }
            },
            "test": {
              "type": "LogicalExpression",
              "start": 4877,
              "end": 4930,
              "loc": {
                "start": {
                  "line": 122,
                  "column": 9
                },
                "end": {
                  "line": 122,
                  "column": 62
                }
              },
              "left": {
                "type": "BinaryExpression",
                "start": 4877,
                "end": 4902,
                "loc": {
                  "start": {
                    "line": 122,
                    "column": 9
                  },
                  "end": {
                    "line": 122,
                    "column": 34
                  }
                },
                "left": {
                  "type": "Identifier",
                  "start": 4877,
                  "end": 4885,
                  "loc": {
                    "start": {
                      "line": 122,
                      "column": 9
                    },
                    "end": {
                      "line": 122,
                      "column": 17
                    }
                  },
                  "name": "distance"
                },
                "operator": "<",
                "right": {
                  "type": "MemberExpression",
                  "start": 4888,
                  "end": 4902,
                  "loc": {
                    "start": {
                      "line": 122,
                      "column": 20
                    },
                    "end": {
                      "line": 122,
                      "column": 34
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 4888,
                    "end": 4897,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 20
                      },
                      "end": {
                        "line": 122,
                        "column": 29
                      }
                    },
                    "name": "raycaster"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 4898,
                    "end": 4902,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 30
                      },
                      "end": {
                        "line": 122,
                        "column": 34
                      }
                    },
                    "name": "near"
                  },
                  "computed": false
                }
              },
              "operator": "||",
              "right": {
                "type": "BinaryExpression",
                "start": 4906,
                "end": 4930,
                "loc": {
                  "start": {
                    "line": 122,
                    "column": 38
                  },
                  "end": {
                    "line": 122,
                    "column": 62
                  }
                },
                "left": {
                  "type": "Identifier",
                  "start": 4906,
                  "end": 4914,
                  "loc": {
                    "start": {
                      "line": 122,
                      "column": 38
                    },
                    "end": {
                      "line": 122,
                      "column": 46
                    }
                  },
                  "name": "distance"
                },
                "operator": ">",
                "right": {
                  "type": "MemberExpression",
                  "start": 4917,
                  "end": 4930,
                  "loc": {
                    "start": {
                      "line": 122,
                      "column": 49
                    },
                    "end": {
                      "line": 122,
                      "column": 62
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 4917,
                    "end": 4926,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 49
                      },
                      "end": {
                        "line": 122,
                        "column": 58
                      }
                    },
                    "name": "raycaster"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 4927,
                    "end": 4930,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 59
                      },
                      "end": {
                        "line": 122,
                        "column": 62
                      }
                    },
                    "name": "far"
                  },
                  "computed": false
                }
              }
            },
            "consequent": {
              "type": "ReturnStatement",
              "start": 4933,
              "end": 4945,
              "loc": {
                "start": {
                  "line": 122,
                  "column": 65
                },
                "end": {
                  "line": 122,
                  "column": 77
                }
              },
              "argument": {
                "type": "Literal",
                "start": 4940,
                "end": 4944,
                "loc": {
                  "start": {
                    "line": 122,
                    "column": 72
                  },
                  "end": {
                    "line": 122,
                    "column": 76
                  }
                },
                "value": null,
                "rawValue": null,
                "raw": "null"
              }
            },
            "alternate": null
          },
          {
            "type": "ReturnStatement",
            "start": 4950,
            "end": 5074,
            "loc": {
              "start": {
                "line": 123,
                "column": 4
              },
              "end": {
                "line": 127,
                "column": 6
              }
            },
            "argument": {
              "type": "ObjectExpression",
              "start": 4957,
              "end": 5073,
              "loc": {
                "start": {
                  "line": 123,
                  "column": 11
                },
                "end": {
                  "line": 127,
                  "column": 5
                }
              },
              "properties": [
                {
                  "type": "Property",
                  "start": 4967,
                  "end": 4985,
                  "loc": {
                    "start": {
                      "line": 124,
                      "column": 8
                    },
                    "end": {
                      "line": 124,
                      "column": 26
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 4967,
                    "end": 4975,
                    "loc": {
                      "start": {
                        "line": 124,
                        "column": 8
                      },
                      "end": {
                        "line": 124,
                        "column": 16
                      }
                    },
                    "name": "distance"
                  },
                  "value": {
                    "type": "Identifier",
                    "start": 4977,
                    "end": 4985,
                    "loc": {
                      "start": {
                        "line": 124,
                        "column": 18
                      },
                      "end": {
                        "line": 124,
                        "column": 26
                      }
                    },
                    "name": "distance"
                  },
                  "kind": "init"
                },
                {
                  "type": "Property",
                  "start": 4995,
                  "end": 5043,
                  "loc": {
                    "start": {
                      "line": 125,
                      "column": 8
                    },
                    "end": {
                      "line": 125,
                      "column": 56
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 4995,
                    "end": 5000,
                    "loc": {
                      "start": {
                        "line": 125,
                        "column": 8
                      },
                      "end": {
                        "line": 125,
                        "column": 13
                      }
                    },
                    "name": "point"
                  },
                  "value": {
                    "type": "CallExpression",
                    "start": 5002,
                    "end": 5043,
                    "loc": {
                      "start": {
                        "line": 125,
                        "column": 15
                      },
                      "end": {
                        "line": 125,
                        "column": 56
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 5002,
                      "end": 5041,
                      "loc": {
                        "start": {
                          "line": 125,
                          "column": 15
                        },
                        "end": {
                          "line": 125,
                          "column": 54
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 5002,
                        "end": 5035,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 15
                          },
                          "end": {
                            "line": 125,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5002,
                          "end": 5011,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 15
                            },
                            "end": {
                              "line": 125,
                              "column": 24
                            }
                          },
                          "name": "raycaster"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5012,
                          "end": 5035,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 25
                            },
                            "end": {
                              "line": 125,
                              "column": 48
                            }
                          },
                          "name": "_intersectionPointWorld"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5036,
                        "end": 5041,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 49
                          },
                          "end": {
                            "line": 125,
                            "column": 54
                          }
                        },
                        "name": "clone"
                      },
                      "computed": false
                    },
                    "arguments": []
                  },
                  "kind": "init"
                },
                {
                  "type": "Property",
                  "start": 5053,
                  "end": 5067,
                  "loc": {
                    "start": {
                      "line": 126,
                      "column": 8
                    },
                    "end": {
                      "line": 126,
                      "column": 22
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 5053,
                    "end": 5059,
                    "loc": {
                      "start": {
                        "line": 126,
                        "column": 8
                      },
                      "end": {
                        "line": 126,
                        "column": 14
                      }
                    },
                    "name": "object"
                  },
                  "value": {
                    "type": "Identifier",
                    "start": 5061,
                    "end": 5067,
                    "loc": {
                      "start": {
                        "line": 126,
                        "column": 16
                      },
                      "end": {
                        "line": 126,
                        "column": 22
                      }
                    },
                    "name": "object"
                  },
                  "kind": "init"
                }
              ]
            }
          }
        ]
      }
    },
    {
      "type": "FunctionDeclaration",
      "start": 5078,
      "end": 6051,
      "loc": {
        "start": {
          "line": 130,
          "column": 0
        },
        "end": {
          "line": 146,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 5087,
        "end": 5118,
        "loc": {
          "start": {
            "line": 130,
            "column": 9
          },
          "end": {
            "line": 130,
            "column": 40
          }
        },
        "name": "checkBufferGeometryIntersection"
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 5120,
          "end": 5126,
          "loc": {
            "start": {
              "line": 130,
              "column": 42
            },
            "end": {
              "line": 130,
              "column": 48
            }
          },
          "name": "object"
        },
        {
          "type": "Identifier",
          "start": 5128,
          "end": 5137,
          "loc": {
            "start": {
              "line": 130,
              "column": 50
            },
            "end": {
              "line": 130,
              "column": 59
            }
          },
          "name": "raycaster"
        },
        {
          "type": "Identifier",
          "start": 5139,
          "end": 5142,
          "loc": {
            "start": {
              "line": 130,
              "column": 61
            },
            "end": {
              "line": 130,
              "column": 64
            }
          },
          "name": "ray"
        },
        {
          "type": "Identifier",
          "start": 5144,
          "end": 5153,
          "loc": {
            "start": {
              "line": 130,
              "column": 66
            },
            "end": {
              "line": 130,
              "column": 75
            }
          },
          "name": "positions"
        },
        {
          "type": "Identifier",
          "start": 5155,
          "end": 5158,
          "loc": {
            "start": {
              "line": 130,
              "column": 77
            },
            "end": {
              "line": 130,
              "column": 80
            }
          },
          "name": "uvs"
        },
        {
          "type": "Identifier",
          "start": 5160,
          "end": 5161,
          "loc": {
            "start": {
              "line": 130,
              "column": 82
            },
            "end": {
              "line": 130,
              "column": 83
            }
          },
          "name": "a"
        },
        {
          "type": "Identifier",
          "start": 5163,
          "end": 5164,
          "loc": {
            "start": {
              "line": 130,
              "column": 85
            },
            "end": {
              "line": 130,
              "column": 86
            }
          },
          "name": "b"
        },
        {
          "type": "Identifier",
          "start": 5166,
          "end": 5167,
          "loc": {
            "start": {
              "line": 130,
              "column": 88
            },
            "end": {
              "line": 130,
              "column": 89
            }
          },
          "name": "c"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 5170,
        "end": 6051,
        "loc": {
          "start": {
            "line": 130,
            "column": 92
          },
          "end": {
            "line": 146,
            "column": 1
          }
        },
        "body": [
          {
            "type": "ExpressionStatement",
            "start": 5176,
            "end": 5220,
            "loc": {
              "start": {
                "line": 131,
                "column": 4
              },
              "end": {
                "line": 131,
                "column": 48
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 5176,
              "end": 5219,
              "loc": {
                "start": {
                  "line": 131,
                  "column": 4
                },
                "end": {
                  "line": 131,
                  "column": 47
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 5176,
                "end": 5199,
                "loc": {
                  "start": {
                    "line": 131,
                    "column": 4
                  },
                  "end": {
                    "line": 131,
                    "column": 27
                  }
                },
                "object": {
                  "type": "MemberExpression",
                  "start": 5176,
                  "end": 5189,
                  "loc": {
                    "start": {
                      "line": 131,
                      "column": 4
                    },
                    "end": {
                      "line": 131,
                      "column": 17
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 5176,
                    "end": 5185,
                    "loc": {
                      "start": {
                        "line": 131,
                        "column": 4
                      },
                      "end": {
                        "line": 131,
                        "column": 13
                      }
                    },
                    "name": "raycaster"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 5186,
                    "end": 5189,
                    "loc": {
                      "start": {
                        "line": 131,
                        "column": 14
                      },
                      "end": {
                        "line": 131,
                        "column": 17
                      }
                    },
                    "name": "_vA"
                  },
                  "computed": false
                },
                "property": {
                  "type": "Identifier",
                  "start": 5190,
                  "end": 5199,
                  "loc": {
                    "start": {
                      "line": 131,
                      "column": 18
                    },
                    "end": {
                      "line": 131,
                      "column": 27
                    }
                  },
                  "name": "fromArray"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "start": 5201,
                  "end": 5210,
                  "loc": {
                    "start": {
                      "line": 131,
                      "column": 29
                    },
                    "end": {
                      "line": 131,
                      "column": 38
                    }
                  },
                  "name": "positions"
                },
                {
                  "type": "BinaryExpression",
                  "start": 5212,
                  "end": 5217,
                  "loc": {
                    "start": {
                      "line": 131,
                      "column": 40
                    },
                    "end": {
                      "line": 131,
                      "column": 45
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 5212,
                    "end": 5213,
                    "loc": {
                      "start": {
                        "line": 131,
                        "column": 40
                      },
                      "end": {
                        "line": 131,
                        "column": 41
                      }
                    },
                    "name": "a"
                  },
                  "operator": "*",
                  "right": {
                    "type": "Literal",
                    "start": 5216,
                    "end": 5217,
                    "loc": {
                      "start": {
                        "line": 131,
                        "column": 44
                      },
                      "end": {
                        "line": 131,
                        "column": 45
                      }
                    },
                    "value": 3,
                    "rawValue": 3,
                    "raw": "3"
                  }
                }
              ]
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 5225,
            "end": 5269,
            "loc": {
              "start": {
                "line": 132,
                "column": 4
              },
              "end": {
                "line": 132,
                "column": 48
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 5225,
              "end": 5268,
              "loc": {
                "start": {
                  "line": 132,
                  "column": 4
                },
                "end": {
                  "line": 132,
                  "column": 47
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 5225,
                "end": 5248,
                "loc": {
                  "start": {
                    "line": 132,
                    "column": 4
                  },
                  "end": {
                    "line": 132,
                    "column": 27
                  }
                },
                "object": {
                  "type": "MemberExpression",
                  "start": 5225,
                  "end": 5238,
                  "loc": {
                    "start": {
                      "line": 132,
                      "column": 4
                    },
                    "end": {
                      "line": 132,
                      "column": 17
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 5225,
                    "end": 5234,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 4
                      },
                      "end": {
                        "line": 132,
                        "column": 13
                      }
                    },
                    "name": "raycaster"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 5235,
                    "end": 5238,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 14
                      },
                      "end": {
                        "line": 132,
                        "column": 17
                      }
                    },
                    "name": "_vB"
                  },
                  "computed": false
                },
                "property": {
                  "type": "Identifier",
                  "start": 5239,
                  "end": 5248,
                  "loc": {
                    "start": {
                      "line": 132,
                      "column": 18
                    },
                    "end": {
                      "line": 132,
                      "column": 27
                    }
                  },
                  "name": "fromArray"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "start": 5250,
                  "end": 5259,
                  "loc": {
                    "start": {
                      "line": 132,
                      "column": 29
                    },
                    "end": {
                      "line": 132,
                      "column": 38
                    }
                  },
                  "name": "positions"
                },
                {
                  "type": "BinaryExpression",
                  "start": 5261,
                  "end": 5266,
                  "loc": {
                    "start": {
                      "line": 132,
                      "column": 40
                    },
                    "end": {
                      "line": 132,
                      "column": 45
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 5261,
                    "end": 5262,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 40
                      },
                      "end": {
                        "line": 132,
                        "column": 41
                      }
                    },
                    "name": "b"
                  },
                  "operator": "*",
                  "right": {
                    "type": "Literal",
                    "start": 5265,
                    "end": 5266,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 44
                      },
                      "end": {
                        "line": 132,
                        "column": 45
                      }
                    },
                    "value": 3,
                    "rawValue": 3,
                    "raw": "3"
                  }
                }
              ]
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 5274,
            "end": 5318,
            "loc": {
              "start": {
                "line": 133,
                "column": 4
              },
              "end": {
                "line": 133,
                "column": 48
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 5274,
              "end": 5317,
              "loc": {
                "start": {
                  "line": 133,
                  "column": 4
                },
                "end": {
                  "line": 133,
                  "column": 47
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 5274,
                "end": 5297,
                "loc": {
                  "start": {
                    "line": 133,
                    "column": 4
                  },
                  "end": {
                    "line": 133,
                    "column": 27
                  }
                },
                "object": {
                  "type": "MemberExpression",
                  "start": 5274,
                  "end": 5287,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 4
                    },
                    "end": {
                      "line": 133,
                      "column": 17
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 5274,
                    "end": 5283,
                    "loc": {
                      "start": {
                        "line": 133,
                        "column": 4
                      },
                      "end": {
                        "line": 133,
                        "column": 13
                      }
                    },
                    "name": "raycaster"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 5284,
                    "end": 5287,
                    "loc": {
                      "start": {
                        "line": 133,
                        "column": 14
                      },
                      "end": {
                        "line": 133,
                        "column": 17
                      }
                    },
                    "name": "_vC"
                  },
                  "computed": false
                },
                "property": {
                  "type": "Identifier",
                  "start": 5288,
                  "end": 5297,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 18
                    },
                    "end": {
                      "line": 133,
                      "column": 27
                    }
                  },
                  "name": "fromArray"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "start": 5299,
                  "end": 5308,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 29
                    },
                    "end": {
                      "line": 133,
                      "column": 38
                    }
                  },
                  "name": "positions"
                },
                {
                  "type": "BinaryExpression",
                  "start": 5310,
                  "end": 5315,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 40
                    },
                    "end": {
                      "line": 133,
                      "column": 45
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 5310,
                    "end": 5311,
                    "loc": {
                      "start": {
                        "line": 133,
                        "column": 40
                      },
                      "end": {
                        "line": 133,
                        "column": 41
                      }
                    },
                    "name": "c"
                  },
                  "operator": "*",
                  "right": {
                    "type": "Literal",
                    "start": 5314,
                    "end": 5315,
                    "loc": {
                      "start": {
                        "line": 133,
                        "column": 44
                      },
                      "end": {
                        "line": 133,
                        "column": 45
                      }
                    },
                    "value": 3,
                    "rawValue": 3,
                    "raw": "3"
                  }
                }
              ]
            }
          },
          {
            "type": "VariableDeclaration",
            "start": 5323,
            "end": 5461,
            "loc": {
              "start": {
                "line": 134,
                "column": 4
              },
              "end": {
                "line": 134,
                "column": 142
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 5327,
                "end": 5460,
                "loc": {
                  "start": {
                    "line": 134,
                    "column": 8
                  },
                  "end": {
                    "line": 134,
                    "column": 141
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 5327,
                  "end": 5339,
                  "loc": {
                    "start": {
                      "line": 134,
                      "column": 8
                    },
                    "end": {
                      "line": 134,
                      "column": 20
                    }
                  },
                  "name": "intersection"
                },
                "init": {
                  "type": "CallExpression",
                  "start": 5342,
                  "end": 5460,
                  "loc": {
                    "start": {
                      "line": 134,
                      "column": 23
                    },
                    "end": {
                      "line": 134,
                      "column": 141
                    }
                  },
                  "callee": {
                    "type": "Identifier",
                    "start": 5342,
                    "end": 5359,
                    "loc": {
                      "start": {
                        "line": 134,
                        "column": 23
                      },
                      "end": {
                        "line": 134,
                        "column": 40
                      }
                    },
                    "name": "checkIntersection"
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 5361,
                      "end": 5367,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 42
                        },
                        "end": {
                          "line": 134,
                          "column": 48
                        }
                      },
                      "name": "object"
                    },
                    {
                      "type": "Identifier",
                      "start": 5369,
                      "end": 5378,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 50
                        },
                        "end": {
                          "line": 134,
                          "column": 59
                        }
                      },
                      "name": "raycaster"
                    },
                    {
                      "type": "Identifier",
                      "start": 5380,
                      "end": 5383,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 61
                        },
                        "end": {
                          "line": 134,
                          "column": 64
                        }
                      },
                      "name": "ray"
                    },
                    {
                      "type": "MemberExpression",
                      "start": 5385,
                      "end": 5398,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 66
                        },
                        "end": {
                          "line": 134,
                          "column": 79
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5385,
                        "end": 5394,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 66
                          },
                          "end": {
                            "line": 134,
                            "column": 75
                          }
                        },
                        "name": "raycaster"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5395,
                        "end": 5398,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 76
                          },
                          "end": {
                            "line": 134,
                            "column": 79
                          }
                        },
                        "name": "_vA"
                      },
                      "computed": false
                    },
                    {
                      "type": "MemberExpression",
                      "start": 5400,
                      "end": 5413,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 81
                        },
                        "end": {
                          "line": 134,
                          "column": 94
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5400,
                        "end": 5409,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 81
                          },
                          "end": {
                            "line": 134,
                            "column": 90
                          }
                        },
                        "name": "raycaster"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5410,
                        "end": 5413,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 91
                          },
                          "end": {
                            "line": 134,
                            "column": 94
                          }
                        },
                        "name": "_vB"
                      },
                      "computed": false
                    },
                    {
                      "type": "MemberExpression",
                      "start": 5415,
                      "end": 5428,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 96
                        },
                        "end": {
                          "line": 134,
                          "column": 109
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5415,
                        "end": 5424,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 96
                          },
                          "end": {
                            "line": 134,
                            "column": 105
                          }
                        },
                        "name": "raycaster"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5425,
                        "end": 5428,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 106
                          },
                          "end": {
                            "line": 134,
                            "column": 109
                          }
                        },
                        "name": "_vC"
                      },
                      "computed": false
                    },
                    {
                      "type": "MemberExpression",
                      "start": 5430,
                      "end": 5458,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 111
                        },
                        "end": {
                          "line": 134,
                          "column": 139
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5430,
                        "end": 5439,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 111
                          },
                          "end": {
                            "line": 134,
                            "column": 120
                          }
                        },
                        "name": "raycaster"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5440,
                        "end": 5458,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 121
                          },
                          "end": {
                            "line": 134,
                            "column": 139
                          }
                        },
                        "name": "_intersectionPoint"
                      },
                      "computed": false
                    }
                  ]
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "IfStatement",
            "start": 5466,
            "end": 6024,
            "loc": {
              "start": {
                "line": 135,
                "column": 4
              },
              "end": {
                "line": 144,
                "column": 5
              }
            },
            "test": {
              "type": "Identifier",
              "start": 5471,
              "end": 5483,
              "loc": {
                "start": {
                  "line": 135,
                  "column": 9
                },
                "end": {
                  "line": 135,
                  "column": 21
                }
              },
              "name": "intersection"
            },
            "consequent": {
              "type": "BlockStatement",
              "start": 5486,
              "end": 6024,
              "loc": {
                "start": {
                  "line": 135,
                  "column": 24
                },
                "end": {
                  "line": 144,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "IfStatement",
                  "start": 5496,
                  "end": 5856,
                  "loc": {
                    "start": {
                      "line": 136,
                      "column": 8
                    },
                    "end": {
                      "line": 141,
                      "column": 9
                    }
                  },
                  "test": {
                    "type": "Identifier",
                    "start": 5501,
                    "end": 5504,
                    "loc": {
                      "start": {
                        "line": 136,
                        "column": 13
                      },
                      "end": {
                        "line": 136,
                        "column": 16
                      }
                    },
                    "name": "uvs"
                  },
                  "consequent": {
                    "type": "BlockStatement",
                    "start": 5507,
                    "end": 5856,
                    "loc": {
                      "start": {
                        "line": 136,
                        "column": 19
                      },
                      "end": {
                        "line": 141,
                        "column": 9
                      }
                    },
                    "body": [
                      {
                        "type": "ExpressionStatement",
                        "start": 5521,
                        "end": 5560,
                        "loc": {
                          "start": {
                            "line": 137,
                            "column": 12
                          },
                          "end": {
                            "line": 137,
                            "column": 51
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 5521,
                          "end": 5559,
                          "loc": {
                            "start": {
                              "line": 137,
                              "column": 12
                            },
                            "end": {
                              "line": 137,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5521,
                            "end": 5545,
                            "loc": {
                              "start": {
                                "line": 137,
                                "column": 12
                              },
                              "end": {
                                "line": 137,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5521,
                              "end": 5535,
                              "loc": {
                                "start": {
                                  "line": 137,
                                  "column": 12
                                },
                                "end": {
                                  "line": 137,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5521,
                                "end": 5530,
                                "loc": {
                                  "start": {
                                    "line": 137,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 137,
                                    "column": 21
                                  }
                                },
                                "name": "raycaster"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5531,
                                "end": 5535,
                                "loc": {
                                  "start": {
                                    "line": 137,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 137,
                                    "column": 26
                                  }
                                },
                                "name": "_uvA"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5536,
                              "end": 5545,
                              "loc": {
                                "start": {
                                  "line": 137,
                                  "column": 27
                                },
                                "end": {
                                  "line": 137,
                                  "column": 36
                                }
                              },
                              "name": "fromArray"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 5547,
                              "end": 5550,
                              "loc": {
                                "start": {
                                  "line": 137,
                                  "column": 38
                                },
                                "end": {
                                  "line": 137,
                                  "column": 41
                                }
                              },
                              "name": "uvs"
                            },
                            {
                              "type": "BinaryExpression",
                              "start": 5552,
                              "end": 5557,
                              "loc": {
                                "start": {
                                  "line": 137,
                                  "column": 43
                                },
                                "end": {
                                  "line": 137,
                                  "column": 48
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 5552,
                                "end": 5553,
                                "loc": {
                                  "start": {
                                    "line": 137,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 137,
                                    "column": 44
                                  }
                                },
                                "name": "a"
                              },
                              "operator": "*",
                              "right": {
                                "type": "Literal",
                                "start": 5556,
                                "end": 5557,
                                "loc": {
                                  "start": {
                                    "line": 137,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 137,
                                    "column": 48
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            }
                          ]
                        }
                      },
                      {
                        "type": "ExpressionStatement",
                        "start": 5573,
                        "end": 5612,
                        "loc": {
                          "start": {
                            "line": 138,
                            "column": 12
                          },
                          "end": {
                            "line": 138,
                            "column": 51
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 5573,
                          "end": 5611,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 12
                            },
                            "end": {
                              "line": 138,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5573,
                            "end": 5597,
                            "loc": {
                              "start": {
                                "line": 138,
                                "column": 12
                              },
                              "end": {
                                "line": 138,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5573,
                              "end": 5587,
                              "loc": {
                                "start": {
                                  "line": 138,
                                  "column": 12
                                },
                                "end": {
                                  "line": 138,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5573,
                                "end": 5582,
                                "loc": {
                                  "start": {
                                    "line": 138,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 138,
                                    "column": 21
                                  }
                                },
                                "name": "raycaster"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5583,
                                "end": 5587,
                                "loc": {
                                  "start": {
                                    "line": 138,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 138,
                                    "column": 26
                                  }
                                },
                                "name": "_uvB"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5588,
                              "end": 5597,
                              "loc": {
                                "start": {
                                  "line": 138,
                                  "column": 27
                                },
                                "end": {
                                  "line": 138,
                                  "column": 36
                                }
                              },
                              "name": "fromArray"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 5599,
                              "end": 5602,
                              "loc": {
                                "start": {
                                  "line": 138,
                                  "column": 38
                                },
                                "end": {
                                  "line": 138,
                                  "column": 41
                                }
                              },
                              "name": "uvs"
                            },
                            {
                              "type": "BinaryExpression",
                              "start": 5604,
                              "end": 5609,
                              "loc": {
                                "start": {
                                  "line": 138,
                                  "column": 43
                                },
                                "end": {
                                  "line": 138,
                                  "column": 48
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 5604,
                                "end": 5605,
                                "loc": {
                                  "start": {
                                    "line": 138,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 138,
                                    "column": 44
                                  }
                                },
                                "name": "b"
                              },
                              "operator": "*",
                              "right": {
                                "type": "Literal",
                                "start": 5608,
                                "end": 5609,
                                "loc": {
                                  "start": {
                                    "line": 138,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 138,
                                    "column": 48
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            }
                          ]
                        }
                      },
                      {
                        "type": "ExpressionStatement",
                        "start": 5625,
                        "end": 5664,
                        "loc": {
                          "start": {
                            "line": 139,
                            "column": 12
                          },
                          "end": {
                            "line": 139,
                            "column": 51
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 5625,
                          "end": 5663,
                          "loc": {
                            "start": {
                              "line": 139,
                              "column": 12
                            },
                            "end": {
                              "line": 139,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5625,
                            "end": 5649,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 12
                              },
                              "end": {
                                "line": 139,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5625,
                              "end": 5639,
                              "loc": {
                                "start": {
                                  "line": 139,
                                  "column": 12
                                },
                                "end": {
                                  "line": 139,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5625,
                                "end": 5634,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 21
                                  }
                                },
                                "name": "raycaster"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5635,
                                "end": 5639,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 26
                                  }
                                },
                                "name": "_uvC"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5640,
                              "end": 5649,
                              "loc": {
                                "start": {
                                  "line": 139,
                                  "column": 27
                                },
                                "end": {
                                  "line": 139,
                                  "column": 36
                                }
                              },
                              "name": "fromArray"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 5651,
                              "end": 5654,
                              "loc": {
                                "start": {
                                  "line": 139,
                                  "column": 38
                                },
                                "end": {
                                  "line": 139,
                                  "column": 41
                                }
                              },
                              "name": "uvs"
                            },
                            {
                              "type": "BinaryExpression",
                              "start": 5656,
                              "end": 5661,
                              "loc": {
                                "start": {
                                  "line": 139,
                                  "column": 43
                                },
                                "end": {
                                  "line": 139,
                                  "column": 48
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 5656,
                                "end": 5657,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 44
                                  }
                                },
                                "name": "c"
                              },
                              "operator": "*",
                              "right": {
                                "type": "Literal",
                                "start": 5660,
                                "end": 5661,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 48
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            }
                          ]
                        }
                      },
                      {
                        "type": "ExpressionStatement",
                        "start": 5677,
                        "end": 5846,
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 12
                          },
                          "end": {
                            "line": 140,
                            "column": 181
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5677,
                          "end": 5845,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 12
                            },
                            "end": {
                              "line": 140,
                              "column": 180
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5677,
                            "end": 5692,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 12
                              },
                              "end": {
                                "line": 140,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5677,
                              "end": 5689,
                              "loc": {
                                "start": {
                                  "line": 140,
                                  "column": 12
                                },
                                "end": {
                                  "line": 140,
                                  "column": 24
                                }
                              },
                              "name": "intersection"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5690,
                              "end": 5692,
                              "loc": {
                                "start": {
                                  "line": 140,
                                  "column": 25
                                },
                                "end": {
                                  "line": 140,
                                  "column": 27
                                }
                              },
                              "name": "uv"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "CallExpression",
                            "start": 5695,
                            "end": 5845,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 30
                              },
                              "end": {
                                "line": 140,
                                "column": 180
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 5695,
                              "end": 5709,
                              "loc": {
                                "start": {
                                  "line": 140,
                                  "column": 30
                                },
                                "end": {
                                  "line": 140,
                                  "column": 44
                                }
                              },
                              "name": "uvIntersection"
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 5711,
                                "end": 5720,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 55
                                  }
                                },
                                "name": "raycaster"
                              },
                              {
                                "type": "MemberExpression",
                                "start": 5722,
                                "end": 5750,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 85
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5722,
                                  "end": 5731,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 66
                                    }
                                  },
                                  "name": "raycaster"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5732,
                                  "end": 5750,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 85
                                    }
                                  },
                                  "name": "_intersectionPoint"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 5752,
                                "end": 5765,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 87
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 100
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5752,
                                  "end": 5761,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 87
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 96
                                    }
                                  },
                                  "name": "raycaster"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5762,
                                  "end": 5765,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 97
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 100
                                    }
                                  },
                                  "name": "_vA"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 5767,
                                "end": 5780,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 102
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 115
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5767,
                                  "end": 5776,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 102
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 111
                                    }
                                  },
                                  "name": "raycaster"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5777,
                                  "end": 5780,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 112
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 115
                                    }
                                  },
                                  "name": "_vB"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 5782,
                                "end": 5795,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 117
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 130
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5782,
                                  "end": 5791,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 117
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 126
                                    }
                                  },
                                  "name": "raycaster"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5792,
                                  "end": 5795,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 127
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 130
                                    }
                                  },
                                  "name": "_vC"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 5797,
                                "end": 5811,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 132
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 146
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5797,
                                  "end": 5806,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 132
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 141
                                    }
                                  },
                                  "name": "raycaster"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5807,
                                  "end": 5811,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 142
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 146
                                    }
                                  },
                                  "name": "_uvA"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 5813,
                                "end": 5827,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 148
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 162
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5813,
                                  "end": 5822,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 148
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 157
                                    }
                                  },
                                  "name": "raycaster"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5823,
                                  "end": 5827,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 158
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 162
                                    }
                                  },
                                  "name": "_uvB"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 5829,
                                "end": 5843,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 164
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 178
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5829,
                                  "end": 5838,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 164
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 173
                                    }
                                  },
                                  "name": "raycaster"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5839,
                                  "end": 5843,
                                  "loc": {
                                    "start": {
                                      "line": 140,
                                      "column": 174
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 178
                                    }
                                  },
                                  "name": "_uvC"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      }
                    ]
                  },
                  "alternate": null
                },
                {
                  "type": "ExpressionStatement",
                  "start": 5865,
                  "end": 5982,
                  "loc": {
                    "start": {
                      "line": 142,
                      "column": 8
                    },
                    "end": {
                      "line": 142,
                      "column": 125
                    }
                  },
                  "expression": {
                    "type": "AssignmentExpression",
                    "start": 5865,
                    "end": 5981,
                    "loc": {
                      "start": {
                        "line": 142,
                        "column": 8
                      },
                      "end": {
                        "line": 142,
                        "column": 124
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "MemberExpression",
                      "start": 5865,
                      "end": 5882,
                      "loc": {
                        "start": {
                          "line": 142,
                          "column": 8
                        },
                        "end": {
                          "line": 142,
                          "column": 25
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5865,
                        "end": 5877,
                        "loc": {
                          "start": {
                            "line": 142,
                            "column": 8
                          },
                          "end": {
                            "line": 142,
                            "column": 20
                          }
                        },
                        "name": "intersection"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 5878,
                        "end": 5882,
                        "loc": {
                          "start": {
                            "line": 142,
                            "column": 21
                          },
                          "end": {
                            "line": 142,
                            "column": 25
                          }
                        },
                        "name": "face"
                      },
                      "computed": false
                    },
                    "right": {
                      "type": "NewExpression",
                      "start": 5885,
                      "end": 5981,
                      "loc": {
                        "start": {
                          "line": 142,
                          "column": 28
                        },
                        "end": {
                          "line": 142,
                          "column": 124
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 5889,
                        "end": 5900,
                        "loc": {
                          "start": {
                            "line": 142,
                            "column": 32
                          },
                          "end": {
                            "line": 142,
                            "column": 43
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5889,
                          "end": 5894,
                          "loc": {
                            "start": {
                              "line": 142,
                              "column": 32
                            },
                            "end": {
                              "line": 142,
                              "column": 37
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5895,
                          "end": 5900,
                          "loc": {
                            "start": {
                              "line": 142,
                              "column": 38
                            },
                            "end": {
                              "line": 142,
                              "column": 43
                            }
                          },
                          "name": "Face3"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 5902,
                          "end": 5903,
                          "loc": {
                            "start": {
                              "line": 142,
                              "column": 45
                            },
                            "end": {
                              "line": 142,
                              "column": 46
                            }
                          },
                          "name": "a"
                        },
                        {
                          "type": "Identifier",
                          "start": 5905,
                          "end": 5906,
                          "loc": {
                            "start": {
                              "line": 142,
                              "column": 48
                            },
                            "end": {
                              "line": 142,
                              "column": 49
                            }
                          },
                          "name": "b"
                        },
                        {
                          "type": "Identifier",
                          "start": 5908,
                          "end": 5909,
                          "loc": {
                            "start": {
                              "line": 142,
                              "column": 51
                            },
                            "end": {
                              "line": 142,
                              "column": 52
                            }
                          },
                          "name": "c"
                        },
                        {
                          "type": "CallExpression",
                          "start": 5911,
                          "end": 5979,
                          "loc": {
                            "start": {
                              "line": 142,
                              "column": 54
                            },
                            "end": {
                              "line": 142,
                              "column": 122
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5911,
                            "end": 5932,
                            "loc": {
                              "start": {
                                "line": 142,
                                "column": 54
                              },
                              "end": {
                                "line": 142,
                                "column": 75
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5911,
                              "end": 5925,
                              "loc": {
                                "start": {
                                  "line": 142,
                                  "column": 54
                                },
                                "end": {
                                  "line": 142,
                                  "column": 68
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5911,
                                "end": 5916,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 59
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5917,
                                "end": 5925,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 68
                                  }
                                },
                                "name": "Triangle"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5926,
                              "end": 5932,
                              "loc": {
                                "start": {
                                  "line": 142,
                                  "column": 69
                                },
                                "end": {
                                  "line": 142,
                                  "column": 75
                                }
                              },
                              "name": "normal"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 5934,
                              "end": 5947,
                              "loc": {
                                "start": {
                                  "line": 142,
                                  "column": 77
                                },
                                "end": {
                                  "line": 142,
                                  "column": 90
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5934,
                                "end": 5943,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 77
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 86
                                  }
                                },
                                "name": "raycaster"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5944,
                                "end": 5947,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 87
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 90
                                  }
                                },
                                "name": "_vA"
                              },
                              "computed": false
                            },
                            {
                              "type": "MemberExpression",
                              "start": 5949,
                              "end": 5962,
                              "loc": {
                                "start": {
                                  "line": 142,
                                  "column": 92
                                },
                                "end": {
                                  "line": 142,
                                  "column": 105
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5949,
                                "end": 5958,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 92
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 101
                                  }
                                },
                                "name": "raycaster"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5959,
                                "end": 5962,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 102
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 105
                                  }
                                },
                                "name": "_vB"
                              },
                              "computed": false
                            },
                            {
                              "type": "MemberExpression",
                              "start": 5964,
                              "end": 5977,
                              "loc": {
                                "start": {
                                  "line": 142,
                                  "column": 107
                                },
                                "end": {
                                  "line": 142,
                                  "column": 120
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5964,
                                "end": 5973,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 107
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 116
                                  }
                                },
                                "name": "raycaster"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5974,
                                "end": 5977,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 117
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 120
                                  }
                                },
                                "name": "_vC"
                              },
                              "computed": false
                            }
                          ]
                        }
                      ]
                    }
                  }
                },
                {
                  "type": "ExpressionStatement",
                  "start": 5991,
                  "end": 6018,
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 8
                    },
                    "end": {
                      "line": 143,
                      "column": 35
                    }
                  },
                  "expression": {
                    "type": "AssignmentExpression",
                    "start": 5991,
                    "end": 6017,
                    "loc": {
                      "start": {
                        "line": 143,
                        "column": 8
                      },
                      "end": {
                        "line": 143,
                        "column": 34
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "MemberExpression",
                      "start": 5991,
                      "end": 6013,
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 8
                        },
                        "end": {
                          "line": 143,
                          "column": 30
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 5991,
                        "end": 6003,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 8
                          },
                          "end": {
                            "line": 143,
                            "column": 20
                          }
                        },
                        "name": "intersection"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6004,
                        "end": 6013,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 21
                          },
                          "end": {
                            "line": 143,
                            "column": 30
                          }
                        },
                        "name": "faceIndex"
                      },
                      "computed": false
                    },
                    "right": {
                      "type": "Identifier",
                      "start": 6016,
                      "end": 6017,
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 33
                        },
                        "end": {
                          "line": 143,
                          "column": 34
                        }
                      },
                      "name": "a"
                    }
                  }
                }
              ]
            },
            "alternate": null
          },
          {
            "type": "ReturnStatement",
            "start": 6029,
            "end": 6049,
            "loc": {
              "start": {
                "line": 145,
                "column": 4
              },
              "end": {
                "line": 145,
                "column": 24
              }
            },
            "argument": {
              "type": "Identifier",
              "start": 6036,
              "end": 6048,
              "loc": {
                "start": {
                  "line": 145,
                  "column": 11
                },
                "end": {
                  "line": 145,
                  "column": 23
                }
              },
              "name": "intersection"
            }
          }
        ]
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 6053,
      "end": 11589,
      "loc": {
        "start": {
          "line": 148,
          "column": 0
        },
        "end": {
          "line": 263,
          "column": 1
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 6053,
        "end": 11589,
        "loc": {
          "start": {
            "line": 148,
            "column": 0
          },
          "end": {
            "line": 263,
            "column": 1
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 6053,
          "end": 6081,
          "loc": {
            "start": {
              "line": 148,
              "column": 0
            },
            "end": {
              "line": 148,
              "column": 28
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 6053,
            "end": 6073,
            "loc": {
              "start": {
                "line": 148,
                "column": 0
              },
              "end": {
                "line": 148,
                "column": 20
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 6053,
              "end": 6063,
              "loc": {
                "start": {
                  "line": 148,
                  "column": 0
                },
                "end": {
                  "line": 148,
                  "column": 10
                }
              },
              "object": {
                "type": "Identifier",
                "start": 6053,
                "end": 6058,
                "loc": {
                  "start": {
                    "line": 148,
                    "column": 0
                  },
                  "end": {
                    "line": 148,
                    "column": 5
                  }
                },
                "name": "THREE"
              },
              "property": {
                "type": "Identifier",
                "start": 6059,
                "end": 6063,
                "loc": {
                  "start": {
                    "line": 148,
                    "column": 6
                  },
                  "end": {
                    "line": 148,
                    "column": 10
                  }
                },
                "name": "Mesh"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 6064,
              "end": 6073,
              "loc": {
                "start": {
                  "line": 148,
                  "column": 11
                },
                "end": {
                  "line": 148,
                  "column": 20
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 6074,
            "end": 6081,
            "loc": {
              "start": {
                "line": 148,
                "column": 21
              },
              "end": {
                "line": 148,
                "column": 28
              }
            },
            "name": "raycast"
          },
          "computed": false
        },
        "right": {
          "type": "FunctionExpression",
          "start": 6084,
          "end": 11589,
          "loc": {
            "start": {
              "line": 148,
              "column": 31
            },
            "end": {
              "line": 263,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 6074,
            "end": 6081,
            "loc": {
              "start": {
                "line": 148,
                "column": 21
              },
              "end": {
                "line": 148,
                "column": 28
              }
            },
            "name": "raycast"
          },
          "generator": false,
          "expression": false,
          "async": false,
          "params": [
            {
              "type": "Identifier",
              "start": 6094,
              "end": 6103,
              "loc": {
                "start": {
                  "line": 148,
                  "column": 41
                },
                "end": {
                  "line": 148,
                  "column": 50
                }
              },
              "name": "raycaster"
            },
            {
              "type": "Identifier",
              "start": 6105,
              "end": 6115,
              "loc": {
                "start": {
                  "line": 148,
                  "column": 52
                },
                "end": {
                  "line": 148,
                  "column": 62
                }
              },
              "name": "intersects"
            },
            {
              "type": "Identifier",
              "start": 6117,
              "end": 6125,
              "loc": {
                "start": {
                  "line": 148,
                  "column": 64
                },
                "end": {
                  "line": 148,
                  "column": 72
                }
              },
              "name": "approach"
            }
          ],
          "body": {
            "type": "BlockStatement",
            "start": 6128,
            "end": 11589,
            "loc": {
              "start": {
                "line": 148,
                "column": 75
              },
              "end": {
                "line": 263,
                "column": 1
              }
            },
            "body": [
              {
                "type": "VariableDeclaration",
                "start": 6134,
                "end": 6163,
                "loc": {
                  "start": {
                    "line": 149,
                    "column": 4
                  },
                  "end": {
                    "line": 149,
                    "column": 33
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 6138,
                    "end": 6162,
                    "loc": {
                      "start": {
                        "line": 149,
                        "column": 8
                      },
                      "end": {
                        "line": 149,
                        "column": 32
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 6138,
                      "end": 6146,
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 8
                        },
                        "end": {
                          "line": 149,
                          "column": 16
                        }
                      },
                      "name": "geometry"
                    },
                    "init": {
                      "type": "MemberExpression",
                      "start": 6149,
                      "end": 6162,
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 19
                        },
                        "end": {
                          "line": 149,
                          "column": 32
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 6149,
                        "end": 6153,
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 19
                          },
                          "end": {
                            "line": 149,
                            "column": 23
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6154,
                        "end": 6162,
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 24
                          },
                          "end": {
                            "line": 149,
                            "column": 32
                          }
                        },
                        "name": "geometry"
                      },
                      "computed": false
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "VariableDeclaration",
                "start": 6168,
                "end": 6197,
                "loc": {
                  "start": {
                    "line": 150,
                    "column": 4
                  },
                  "end": {
                    "line": 150,
                    "column": 33
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 6172,
                    "end": 6196,
                    "loc": {
                      "start": {
                        "line": 150,
                        "column": 8
                      },
                      "end": {
                        "line": 150,
                        "column": 32
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 6172,
                      "end": 6180,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 8
                        },
                        "end": {
                          "line": 150,
                          "column": 16
                        }
                      },
                      "name": "material"
                    },
                    "init": {
                      "type": "MemberExpression",
                      "start": 6183,
                      "end": 6196,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 19
                        },
                        "end": {
                          "line": 150,
                          "column": 32
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 6183,
                        "end": 6187,
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 19
                          },
                          "end": {
                            "line": 150,
                            "column": 23
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6188,
                        "end": 6196,
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 24
                          },
                          "end": {
                            "line": 150,
                            "column": 32
                          }
                        },
                        "name": "material"
                      },
                      "computed": false
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "VariableDeclaration",
                "start": 6202,
                "end": 6237,
                "loc": {
                  "start": {
                    "line": 151,
                    "column": 4
                  },
                  "end": {
                    "line": 151,
                    "column": 39
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 6206,
                    "end": 6236,
                    "loc": {
                      "start": {
                        "line": 151,
                        "column": 8
                      },
                      "end": {
                        "line": 151,
                        "column": 38
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 6206,
                      "end": 6217,
                      "loc": {
                        "start": {
                          "line": 151,
                          "column": 8
                        },
                        "end": {
                          "line": 151,
                          "column": 19
                        }
                      },
                      "name": "matrixWorld"
                    },
                    "init": {
                      "type": "MemberExpression",
                      "start": 6220,
                      "end": 6236,
                      "loc": {
                        "start": {
                          "line": 151,
                          "column": 22
                        },
                        "end": {
                          "line": 151,
                          "column": 38
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 6220,
                        "end": 6224,
                        "loc": {
                          "start": {
                            "line": 151,
                            "column": 22
                          },
                          "end": {
                            "line": 151,
                            "column": 26
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6225,
                        "end": 6236,
                        "loc": {
                          "start": {
                            "line": 151,
                            "column": 27
                          },
                          "end": {
                            "line": 151,
                            "column": 38
                          }
                        },
                        "name": "matrixWorld"
                      },
                      "computed": false
                    }
                  }
                ],
                "kind": "var"
              },
              {
                "type": "IfStatement",
                "start": 6242,
                "end": 6279,
                "loc": {
                  "start": {
                    "line": 152,
                    "column": 4
                  },
                  "end": {
                    "line": 152,
                    "column": 41
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 6247,
                  "end": 6269,
                  "loc": {
                    "start": {
                      "line": 152,
                      "column": 9
                    },
                    "end": {
                      "line": 152,
                      "column": 31
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 6247,
                    "end": 6255,
                    "loc": {
                      "start": {
                        "line": 152,
                        "column": 9
                      },
                      "end": {
                        "line": 152,
                        "column": 17
                      }
                    },
                    "name": "material"
                  },
                  "operator": "===",
                  "right": {
                    "type": "Identifier",
                    "start": 6260,
                    "end": 6269,
                    "loc": {
                      "start": {
                        "line": 152,
                        "column": 22
                      },
                      "end": {
                        "line": 152,
                        "column": 31
                      }
                    },
                    "name": "undefined"
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 6272,
                  "end": 6279,
                  "loc": {
                    "start": {
                      "line": 152,
                      "column": 34
                    },
                    "end": {
                      "line": 152,
                      "column": 41
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 6284,
                "end": 6357,
                "loc": {
                  "start": {
                    "line": 153,
                    "column": 4
                  },
                  "end": {
                    "line": 153,
                    "column": 77
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 6289,
                  "end": 6321,
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 9
                    },
                    "end": {
                      "line": 153,
                      "column": 41
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 6289,
                    "end": 6312,
                    "loc": {
                      "start": {
                        "line": 153,
                        "column": 9
                      },
                      "end": {
                        "line": 153,
                        "column": 32
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 6289,
                      "end": 6297,
                      "loc": {
                        "start": {
                          "line": 153,
                          "column": 9
                        },
                        "end": {
                          "line": 153,
                          "column": 17
                        }
                      },
                      "name": "geometry"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6298,
                      "end": 6312,
                      "loc": {
                        "start": {
                          "line": 153,
                          "column": 18
                        },
                        "end": {
                          "line": 153,
                          "column": 32
                        }
                      },
                      "name": "boundingSphere"
                    },
                    "computed": false
                  },
                  "operator": "===",
                  "right": {
                    "type": "Literal",
                    "start": 6317,
                    "end": 6321,
                    "loc": {
                      "start": {
                        "line": 153,
                        "column": 37
                      },
                      "end": {
                        "line": 153,
                        "column": 41
                      }
                    },
                    "value": null,
                    "rawValue": null,
                    "raw": "null"
                  }
                },
                "consequent": {
                  "type": "ExpressionStatement",
                  "start": 6324,
                  "end": 6357,
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 44
                    },
                    "end": {
                      "line": 153,
                      "column": 77
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 6324,
                    "end": 6356,
                    "loc": {
                      "start": {
                        "line": 153,
                        "column": 44
                      },
                      "end": {
                        "line": 153,
                        "column": 76
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 6324,
                      "end": 6354,
                      "loc": {
                        "start": {
                          "line": 153,
                          "column": 44
                        },
                        "end": {
                          "line": 153,
                          "column": 74
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 6324,
                        "end": 6332,
                        "loc": {
                          "start": {
                            "line": 153,
                            "column": 44
                          },
                          "end": {
                            "line": 153,
                            "column": 52
                          }
                        },
                        "name": "geometry"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6333,
                        "end": 6354,
                        "loc": {
                          "start": {
                            "line": 153,
                            "column": 53
                          },
                          "end": {
                            "line": 153,
                            "column": 74
                          }
                        },
                        "name": "computeBoundingSphere"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 6362,
                "end": 6412,
                "loc": {
                  "start": {
                    "line": 154,
                    "column": 4
                  },
                  "end": {
                    "line": 154,
                    "column": 54
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 6362,
                  "end": 6411,
                  "loc": {
                    "start": {
                      "line": 154,
                      "column": 4
                    },
                    "end": {
                      "line": 154,
                      "column": 53
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 6362,
                    "end": 6384,
                    "loc": {
                      "start": {
                        "line": 154,
                        "column": 4
                      },
                      "end": {
                        "line": 154,
                        "column": 26
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 6362,
                      "end": 6379,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 4
                        },
                        "end": {
                          "line": 154,
                          "column": 21
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 6362,
                        "end": 6371,
                        "loc": {
                          "start": {
                            "line": 154,
                            "column": 4
                          },
                          "end": {
                            "line": 154,
                            "column": 13
                          }
                        },
                        "name": "raycaster"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6372,
                        "end": 6379,
                        "loc": {
                          "start": {
                            "line": 154,
                            "column": 14
                          },
                          "end": {
                            "line": 154,
                            "column": 21
                          }
                        },
                        "name": "_sphere"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6380,
                      "end": 6384,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 22
                        },
                        "end": {
                          "line": 154,
                          "column": 26
                        }
                      },
                      "name": "copy"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "MemberExpression",
                      "start": 6386,
                      "end": 6409,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 28
                        },
                        "end": {
                          "line": 154,
                          "column": 51
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 6386,
                        "end": 6394,
                        "loc": {
                          "start": {
                            "line": 154,
                            "column": 28
                          },
                          "end": {
                            "line": 154,
                            "column": 36
                          }
                        },
                        "name": "geometry"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6395,
                        "end": 6409,
                        "loc": {
                          "start": {
                            "line": 154,
                            "column": 37
                          },
                          "end": {
                            "line": 154,
                            "column": 51
                          }
                        },
                        "name": "boundingSphere"
                      },
                      "computed": false
                    }
                  ]
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 6417,
                "end": 6463,
                "loc": {
                  "start": {
                    "line": 155,
                    "column": 4
                  },
                  "end": {
                    "line": 155,
                    "column": 50
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 6417,
                  "end": 6462,
                  "loc": {
                    "start": {
                      "line": 155,
                      "column": 4
                    },
                    "end": {
                      "line": 155,
                      "column": 49
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 6417,
                    "end": 6447,
                    "loc": {
                      "start": {
                        "line": 155,
                        "column": 4
                      },
                      "end": {
                        "line": 155,
                        "column": 34
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 6417,
                      "end": 6434,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 4
                        },
                        "end": {
                          "line": 155,
                          "column": 21
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 6417,
                        "end": 6426,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 4
                          },
                          "end": {
                            "line": 155,
                            "column": 13
                          }
                        },
                        "name": "raycaster"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6427,
                        "end": 6434,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 14
                          },
                          "end": {
                            "line": 155,
                            "column": 21
                          }
                        },
                        "name": "_sphere"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6435,
                      "end": 6447,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 22
                        },
                        "end": {
                          "line": 155,
                          "column": 34
                        }
                      },
                      "name": "applyMatrix4"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 6449,
                      "end": 6460,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 36
                        },
                        "end": {
                          "line": 155,
                          "column": 47
                        }
                      },
                      "name": "matrixWorld"
                    }
                  ]
                }
              },
              {
                "type": "IfStatement",
                "start": 6468,
                "end": 6544,
                "loc": {
                  "start": {
                    "line": 156,
                    "column": 4
                  },
                  "end": {
                    "line": 156,
                    "column": 80
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 6473,
                  "end": 6534,
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 9
                    },
                    "end": {
                      "line": 156,
                      "column": 70
                    }
                  },
                  "left": {
                    "type": "CallExpression",
                    "start": 6473,
                    "end": 6524,
                    "loc": {
                      "start": {
                        "line": 156,
                        "column": 9
                      },
                      "end": {
                        "line": 156,
                        "column": 60
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 6473,
                      "end": 6503,
                      "loc": {
                        "start": {
                          "line": 156,
                          "column": 9
                        },
                        "end": {
                          "line": 156,
                          "column": 39
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 6473,
                        "end": 6486,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 9
                          },
                          "end": {
                            "line": 156,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6473,
                          "end": 6482,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 9
                            },
                            "end": {
                              "line": 156,
                              "column": 18
                            }
                          },
                          "name": "raycaster"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6483,
                          "end": 6486,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 19
                            },
                            "end": {
                              "line": 156,
                              "column": 22
                            }
                          },
                          "name": "ray"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6487,
                        "end": 6503,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 23
                          },
                          "end": {
                            "line": 156,
                            "column": 39
                          }
                        },
                        "name": "intersectsSphere"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "MemberExpression",
                        "start": 6505,
                        "end": 6522,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 41
                          },
                          "end": {
                            "line": 156,
                            "column": 58
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6505,
                          "end": 6514,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 41
                            },
                            "end": {
                              "line": 156,
                              "column": 50
                            }
                          },
                          "name": "raycaster"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6515,
                          "end": 6522,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 51
                            },
                            "end": {
                              "line": 156,
                              "column": 58
                            }
                          },
                          "name": "_sphere"
                        },
                        "computed": false
                      }
                    ]
                  },
                  "operator": "===",
                  "right": {
                    "type": "Literal",
                    "start": 6529,
                    "end": 6534,
                    "loc": {
                      "start": {
                        "line": 156,
                        "column": 65
                      },
                      "end": {
                        "line": 156,
                        "column": 70
                      }
                    },
                    "value": false,
                    "rawValue": false,
                    "raw": "false"
                  }
                },
                "consequent": {
                  "type": "ReturnStatement",
                  "start": 6537,
                  "end": 6544,
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 73
                    },
                    "end": {
                      "line": 156,
                      "column": 80
                    }
                  },
                  "argument": null
                },
                "alternate": null
              },
              {
                "type": "ExpressionStatement",
                "start": 6549,
                "end": 6600,
                "loc": {
                  "start": {
                    "line": 157,
                    "column": 4
                  },
                  "end": {
                    "line": 157,
                    "column": 55
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 6549,
                  "end": 6599,
                  "loc": {
                    "start": {
                      "line": 157,
                      "column": 4
                    },
                    "end": {
                      "line": 157,
                      "column": 54
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 6549,
                    "end": 6584,
                    "loc": {
                      "start": {
                        "line": 157,
                        "column": 4
                      },
                      "end": {
                        "line": 157,
                        "column": 39
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 6549,
                      "end": 6573,
                      "loc": {
                        "start": {
                          "line": 157,
                          "column": 4
                        },
                        "end": {
                          "line": 157,
                          "column": 28
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 6549,
                        "end": 6558,
                        "loc": {
                          "start": {
                            "line": 157,
                            "column": 4
                          },
                          "end": {
                            "line": 157,
                            "column": 13
                          }
                        },
                        "name": "raycaster"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6559,
                        "end": 6573,
                        "loc": {
                          "start": {
                            "line": 157,
                            "column": 14
                          },
                          "end": {
                            "line": 157,
                            "column": 28
                          }
                        },
                        "name": "_inverseMatrix"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6574,
                      "end": 6584,
                      "loc": {
                        "start": {
                          "line": 157,
                          "column": 29
                        },
                        "end": {
                          "line": 157,
                          "column": 39
                        }
                      },
                      "name": "getInverse"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 6586,
                      "end": 6597,
                      "loc": {
                        "start": {
                          "line": 157,
                          "column": 41
                        },
                        "end": {
                          "line": 157,
                          "column": 52
                        }
                      },
                      "name": "matrixWorld"
                    }
                  ]
                }
              },
              {
                "type": "ExpressionStatement",
                "start": 6605,
                "end": 6683,
                "loc": {
                  "start": {
                    "line": 158,
                    "column": 4
                  },
                  "end": {
                    "line": 158,
                    "column": 82
                  }
                },
                "expression": {
                  "type": "CallExpression",
                  "start": 6605,
                  "end": 6682,
                  "loc": {
                    "start": {
                      "line": 158,
                      "column": 4
                    },
                    "end": {
                      "line": 158,
                      "column": 81
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 6605,
                    "end": 6654,
                    "loc": {
                      "start": {
                        "line": 158,
                        "column": 4
                      },
                      "end": {
                        "line": 158,
                        "column": 53
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 6605,
                      "end": 6641,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 4
                        },
                        "end": {
                          "line": 158,
                          "column": 40
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 6605,
                        "end": 6624,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 4
                          },
                          "end": {
                            "line": 158,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 6605,
                          "end": 6619,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 4
                            },
                            "end": {
                              "line": 158,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6605,
                            "end": 6614,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 4
                              },
                              "end": {
                                "line": 158,
                                "column": 13
                              }
                            },
                            "name": "raycaster"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6615,
                            "end": 6619,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 14
                              },
                              "end": {
                                "line": 158,
                                "column": 18
                              }
                            },
                            "name": "_ray"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6620,
                          "end": 6624,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 19
                            },
                            "end": {
                              "line": 158,
                              "column": 23
                            }
                          },
                          "name": "copy"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 6626,
                          "end": 6639,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 25
                            },
                            "end": {
                              "line": 158,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6626,
                            "end": 6635,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 25
                              },
                              "end": {
                                "line": 158,
                                "column": 34
                              }
                            },
                            "name": "raycaster"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6636,
                            "end": 6639,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 35
                              },
                              "end": {
                                "line": 158,
                                "column": 38
                              }
                            },
                            "name": "ray"
                          },
                          "computed": false
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6642,
                      "end": 6654,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 41
                        },
                        "end": {
                          "line": 158,
                          "column": 53
                        }
                      },
                      "name": "applyMatrix4"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "MemberExpression",
                      "start": 6656,
                      "end": 6680,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 55
                        },
                        "end": {
                          "line": 158,
                          "column": 79
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 6656,
                        "end": 6665,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 55
                          },
                          "end": {
                            "line": 158,
                            "column": 64
                          }
                        },
                        "name": "raycaster"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6666,
                        "end": 6680,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 65
                          },
                          "end": {
                            "line": 158,
                            "column": 79
                          }
                        },
                        "name": "_inverseMatrix"
                      },
                      "computed": false
                    }
                  ]
                }
              },
              {
                "type": "IfStatement",
                "start": 6688,
                "end": 6818,
                "loc": {
                  "start": {
                    "line": 159,
                    "column": 4
                  },
                  "end": {
                    "line": 161,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 6693,
                  "end": 6722,
                  "loc": {
                    "start": {
                      "line": 159,
                      "column": 9
                    },
                    "end": {
                      "line": 159,
                      "column": 38
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 6693,
                    "end": 6713,
                    "loc": {
                      "start": {
                        "line": 159,
                        "column": 9
                      },
                      "end": {
                        "line": 159,
                        "column": 29
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 6693,
                      "end": 6701,
                      "loc": {
                        "start": {
                          "line": 159,
                          "column": 9
                        },
                        "end": {
                          "line": 159,
                          "column": 17
                        }
                      },
                      "name": "geometry"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6702,
                      "end": 6713,
                      "loc": {
                        "start": {
                          "line": 159,
                          "column": 18
                        },
                        "end": {
                          "line": 159,
                          "column": 29
                        }
                      },
                      "name": "boundingBox"
                    },
                    "computed": false
                  },
                  "operator": "!==",
                  "right": {
                    "type": "Literal",
                    "start": 6718,
                    "end": 6722,
                    "loc": {
                      "start": {
                        "line": 159,
                        "column": 34
                      },
                      "end": {
                        "line": 159,
                        "column": 38
                      }
                    },
                    "value": null,
                    "rawValue": null,
                    "raw": "null"
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6725,
                  "end": 6818,
                  "loc": {
                    "start": {
                      "line": 159,
                      "column": 41
                    },
                    "end": {
                      "line": 161,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6735,
                      "end": 6812,
                      "loc": {
                        "start": {
                          "line": 160,
                          "column": 8
                        },
                        "end": {
                          "line": 160,
                          "column": 85
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 6740,
                        "end": 6802,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 13
                          },
                          "end": {
                            "line": 160,
                            "column": 75
                          }
                        },
                        "left": {
                          "type": "CallExpression",
                          "start": 6740,
                          "end": 6792,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 13
                            },
                            "end": {
                              "line": 160,
                              "column": 65
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6740,
                            "end": 6768,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 13
                              },
                              "end": {
                                "line": 160,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6740,
                              "end": 6754,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 13
                                },
                                "end": {
                                  "line": 160,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6740,
                                "end": 6749,
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 22
                                  }
                                },
                                "name": "raycaster"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6750,
                                "end": 6754,
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 27
                                  }
                                },
                                "name": "_ray"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6755,
                              "end": 6768,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 28
                                },
                                "end": {
                                  "line": 160,
                                  "column": 41
                                }
                              },
                              "name": "intersectsBox"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 6770,
                              "end": 6790,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 43
                                },
                                "end": {
                                  "line": 160,
                                  "column": 63
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6770,
                                "end": 6778,
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 51
                                  }
                                },
                                "name": "geometry"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6779,
                                "end": 6790,
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 63
                                  }
                                },
                                "name": "boundingBox"
                              },
                              "computed": false
                            }
                          ]
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 6797,
                          "end": 6802,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 70
                            },
                            "end": {
                              "line": 160,
                              "column": 75
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 6805,
                        "end": 6812,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 78
                          },
                          "end": {
                            "line": 160,
                            "column": 85
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "IfStatement",
                "start": 6824,
                "end": 7131,
                "loc": {
                  "start": {
                    "line": 163,
                    "column": 4
                  },
                  "end": {
                    "line": 171,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 6828,
                  "end": 6866,
                  "loc": {
                    "start": {
                      "line": 163,
                      "column": 8
                    },
                    "end": {
                      "line": 163,
                      "column": 46
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 6828,
                    "end": 6836,
                    "loc": {
                      "start": {
                        "line": 163,
                        "column": 8
                      },
                      "end": {
                        "line": 163,
                        "column": 16
                      }
                    },
                    "name": "approach"
                  },
                  "operator": "===",
                  "right": {
                    "type": "MemberExpression",
                    "start": 6841,
                    "end": 6866,
                    "loc": {
                      "start": {
                        "line": 163,
                        "column": 21
                      },
                      "end": {
                        "line": 163,
                        "column": 46
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 6841,
                      "end": 6859,
                      "loc": {
                        "start": {
                          "line": 163,
                          "column": 21
                        },
                        "end": {
                          "line": 163,
                          "column": 39
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 6841,
                        "end": 6850,
                        "loc": {
                          "start": {
                            "line": 163,
                            "column": 21
                          },
                          "end": {
                            "line": 163,
                            "column": 30
                          }
                        },
                        "name": "Raycaster"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6851,
                        "end": 6859,
                        "loc": {
                          "start": {
                            "line": 163,
                            "column": 31
                          },
                          "end": {
                            "line": 163,
                            "column": 39
                          }
                        },
                        "name": "Approach"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 6860,
                      "end": 6866,
                      "loc": {
                        "start": {
                          "line": 163,
                          "column": 40
                        },
                        "end": {
                          "line": 163,
                          "column": 46
                        }
                      },
                      "name": "Bounds"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 6868,
                  "end": 7131,
                  "loc": {
                    "start": {
                      "line": 163,
                      "column": 48
                    },
                    "end": {
                      "line": 171,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 6878,
                      "end": 7068,
                      "loc": {
                        "start": {
                          "line": 164,
                          "column": 8
                        },
                        "end": {
                          "line": 168,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 6882,
                          "end": 7067,
                          "loc": {
                            "start": {
                              "line": 164,
                              "column": 12
                            },
                            "end": {
                              "line": 168,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 6882,
                            "end": 6894,
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 12
                              },
                              "end": {
                                "line": 164,
                                "column": 24
                              }
                            },
                            "name": "intersection"
                          },
                          "init": {
                            "type": "ObjectExpression",
                            "start": 6897,
                            "end": 7067,
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 27
                              },
                              "end": {
                                "line": 168,
                                "column": 9
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 6911,
                                "end": 6978,
                                "loc": {
                                  "start": {
                                    "line": 165,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 165,
                                    "column": 79
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 6911,
                                  "end": 6919,
                                  "loc": {
                                    "start": {
                                      "line": 165,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 165,
                                      "column": 20
                                    }
                                  },
                                  "name": "distance"
                                },
                                "value": {
                                  "type": "CallExpression",
                                  "start": 6921,
                                  "end": 6978,
                                  "loc": {
                                    "start": {
                                      "line": 165,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 165,
                                      "column": 79
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6921,
                                    "end": 6952,
                                    "loc": {
                                      "start": {
                                        "line": 165,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 165,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 6921,
                                      "end": 6941,
                                      "loc": {
                                        "start": {
                                          "line": 165,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 165,
                                          "column": 42
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 6921,
                                        "end": 6934,
                                        "loc": {
                                          "start": {
                                            "line": 165,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 165,
                                            "column": 35
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6921,
                                          "end": 6930,
                                          "loc": {
                                            "start": {
                                              "line": 165,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 165,
                                              "column": 31
                                            }
                                          },
                                          "name": "raycaster"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6931,
                                          "end": 6934,
                                          "loc": {
                                            "start": {
                                              "line": 165,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 165,
                                              "column": 35
                                            }
                                          },
                                          "name": "ray"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6935,
                                        "end": 6941,
                                        "loc": {
                                          "start": {
                                            "line": 165,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 165,
                                            "column": 42
                                          }
                                        },
                                        "name": "origin"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6942,
                                      "end": 6952,
                                      "loc": {
                                        "start": {
                                          "line": 165,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 165,
                                          "column": 53
                                        }
                                      },
                                      "name": "distanceTo"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 6953,
                                      "end": 6977,
                                      "loc": {
                                        "start": {
                                          "line": 165,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 165,
                                          "column": 78
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 6953,
                                        "end": 6970,
                                        "loc": {
                                          "start": {
                                            "line": 165,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 165,
                                            "column": 71
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6953,
                                          "end": 6962,
                                          "loc": {
                                            "start": {
                                              "line": 165,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 165,
                                              "column": 63
                                            }
                                          },
                                          "name": "raycaster"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6963,
                                          "end": 6970,
                                          "loc": {
                                            "start": {
                                              "line": 165,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 165,
                                              "column": 71
                                            }
                                          },
                                          "name": "_sphere"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6971,
                                        "end": 6977,
                                        "loc": {
                                          "start": {
                                            "line": 165,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 165,
                                            "column": 78
                                          }
                                        },
                                        "name": "center"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "kind": "init"
                              },
                              {
                                "type": "Property",
                                "start": 6992,
                                "end": 7004,
                                "loc": {
                                  "start": {
                                    "line": 166,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 166,
                                    "column": 24
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 6992,
                                  "end": 6998,
                                  "loc": {
                                    "start": {
                                      "line": 166,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 166,
                                      "column": 18
                                    }
                                  },
                                  "name": "object"
                                },
                                "value": {
                                  "type": "ThisExpression",
                                  "start": 7000,
                                  "end": 7004,
                                  "loc": {
                                    "start": {
                                      "line": 166,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 166,
                                      "column": 24
                                    }
                                  }
                                },
                                "kind": "init"
                              },
                              {
                                "type": "Property",
                                "start": 7018,
                                "end": 7057,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 51
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 7018,
                                  "end": 7023,
                                  "loc": {
                                    "start": {
                                      "line": 167,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 167,
                                      "column": 17
                                    }
                                  },
                                  "name": "point"
                                },
                                "value": {
                                  "type": "CallExpression",
                                  "start": 7025,
                                  "end": 7057,
                                  "loc": {
                                    "start": {
                                      "line": 167,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 167,
                                      "column": 51
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 7025,
                                    "end": 7055,
                                    "loc": {
                                      "start": {
                                        "line": 167,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 167,
                                        "column": 49
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7025,
                                      "end": 7049,
                                      "loc": {
                                        "start": {
                                          "line": 167,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 167,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 7025,
                                        "end": 7042,
                                        "loc": {
                                          "start": {
                                            "line": 167,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 167,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7025,
                                          "end": 7034,
                                          "loc": {
                                            "start": {
                                              "line": 167,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 167,
                                              "column": 28
                                            }
                                          },
                                          "name": "raycaster"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7035,
                                          "end": 7042,
                                          "loc": {
                                            "start": {
                                              "line": 167,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 167,
                                              "column": 36
                                            }
                                          },
                                          "name": "_sphere"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7043,
                                        "end": 7049,
                                        "loc": {
                                          "start": {
                                            "line": 167,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 167,
                                            "column": 43
                                          }
                                        },
                                        "name": "center"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7050,
                                      "end": 7055,
                                      "loc": {
                                        "start": {
                                          "line": 167,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 167,
                                          "column": 49
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7077,
                      "end": 7109,
                      "loc": {
                        "start": {
                          "line": 169,
                          "column": 8
                        },
                        "end": {
                          "line": 169,
                          "column": 40
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7077,
                        "end": 7108,
                        "loc": {
                          "start": {
                            "line": 169,
                            "column": 8
                          },
                          "end": {
                            "line": 169,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7077,
                          "end": 7092,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 8
                            },
                            "end": {
                              "line": 169,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7077,
                            "end": 7087,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 8
                              },
                              "end": {
                                "line": 169,
                                "column": 18
                              }
                            },
                            "name": "intersects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7088,
                            "end": 7092,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 19
                              },
                              "end": {
                                "line": 169,
                                "column": 23
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 7094,
                            "end": 7106,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 25
                              },
                              "end": {
                                "line": 169,
                                "column": 37
                              }
                            },
                            "name": "intersection"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 7118,
                      "end": 7125,
                      "loc": {
                        "start": {
                          "line": 170,
                          "column": 8
                        },
                        "end": {
                          "line": 170,
                          "column": 15
                        }
                      },
                      "argument": null
                    }
                  ]
                },
                "alternate": null
              },
              {
                "type": "VariableDeclaration",
                "start": 7137,
                "end": 7159,
                "loc": {
                  "start": {
                    "line": 173,
                    "column": 4
                  },
                  "end": {
                    "line": 173,
                    "column": 26
                  }
                },
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "start": 7141,
                    "end": 7144,
                    "loc": {
                      "start": {
                        "line": 173,
                        "column": 8
                      },
                      "end": {
                        "line": 173,
                        "column": 11
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 7141,
                      "end": 7144,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 8
                        },
                        "end": {
                          "line": 173,
                          "column": 11
                        }
                      },
                      "name": "uvs"
                    },
                    "init": null
                  },
                  {
                    "type": "VariableDeclarator",
                    "start": 7146,
                    "end": 7158,
                    "loc": {
                      "start": {
                        "line": 173,
                        "column": 13
                      },
                      "end": {
                        "line": 173,
                        "column": 25
                      }
                    },
                    "id": {
                      "type": "Identifier",
                      "start": 7146,
                      "end": 7158,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 13
                        },
                        "end": {
                          "line": 173,
                          "column": 25
                        }
                      },
                      "name": "intersection"
                    },
                    "init": null
                  }
                ],
                "kind": "var"
              },
              {
                "type": "IfStatement",
                "start": 7164,
                "end": 11587,
                "loc": {
                  "start": {
                    "line": 174,
                    "column": 4
                  },
                  "end": {
                    "line": 262,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 7169,
                  "end": 7209,
                  "loc": {
                    "start": {
                      "line": 174,
                      "column": 9
                    },
                    "end": {
                      "line": 174,
                      "column": 49
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 7169,
                    "end": 7177,
                    "loc": {
                      "start": {
                        "line": 174,
                        "column": 9
                      },
                      "end": {
                        "line": 174,
                        "column": 17
                      }
                    },
                    "name": "geometry"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "MemberExpression",
                    "start": 7189,
                    "end": 7209,
                    "loc": {
                      "start": {
                        "line": 174,
                        "column": 29
                      },
                      "end": {
                        "line": 174,
                        "column": 49
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 7189,
                      "end": 7194,
                      "loc": {
                        "start": {
                          "line": 174,
                          "column": 29
                        },
                        "end": {
                          "line": 174,
                          "column": 34
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 7195,
                      "end": 7209,
                      "loc": {
                        "start": {
                          "line": 174,
                          "column": 35
                        },
                        "end": {
                          "line": 174,
                          "column": 49
                        }
                      },
                      "name": "BufferGeometry"
                    },
                    "computed": false
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 7212,
                  "end": 8782,
                  "loc": {
                    "start": {
                      "line": 174,
                      "column": 52
                    },
                    "end": {
                      "line": 210,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 7222,
                      "end": 7234,
                      "loc": {
                        "start": {
                          "line": 175,
                          "column": 8
                        },
                        "end": {
                          "line": 175,
                          "column": 20
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7226,
                          "end": 7227,
                          "loc": {
                            "start": {
                              "line": 175,
                              "column": 12
                            },
                            "end": {
                              "line": 175,
                              "column": 13
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7226,
                            "end": 7227,
                            "loc": {
                              "start": {
                                "line": 175,
                                "column": 12
                              },
                              "end": {
                                "line": 175,
                                "column": 13
                              }
                            },
                            "name": "a"
                          },
                          "init": null
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 7229,
                          "end": 7230,
                          "loc": {
                            "start": {
                              "line": 175,
                              "column": 15
                            },
                            "end": {
                              "line": 175,
                              "column": 16
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7229,
                            "end": 7230,
                            "loc": {
                              "start": {
                                "line": 175,
                                "column": 15
                              },
                              "end": {
                                "line": 175,
                                "column": 16
                              }
                            },
                            "name": "b"
                          },
                          "init": null
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 7232,
                          "end": 7233,
                          "loc": {
                            "start": {
                              "line": 175,
                              "column": 18
                            },
                            "end": {
                              "line": 175,
                              "column": 19
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7232,
                            "end": 7233,
                            "loc": {
                              "start": {
                                "line": 175,
                                "column": 18
                              },
                              "end": {
                                "line": 175,
                                "column": 19
                              }
                            },
                            "name": "c"
                          },
                          "init": null
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7243,
                      "end": 7270,
                      "loc": {
                        "start": {
                          "line": 176,
                          "column": 8
                        },
                        "end": {
                          "line": 176,
                          "column": 35
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7247,
                          "end": 7269,
                          "loc": {
                            "start": {
                              "line": 176,
                              "column": 12
                            },
                            "end": {
                              "line": 176,
                              "column": 34
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7247,
                            "end": 7252,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 12
                              },
                              "end": {
                                "line": 176,
                                "column": 17
                              }
                            },
                            "name": "index"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7255,
                            "end": 7269,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 20
                              },
                              "end": {
                                "line": 176,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7255,
                              "end": 7263,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 20
                                },
                                "end": {
                                  "line": 176,
                                  "column": 28
                                }
                              },
                              "name": "geometry"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7264,
                              "end": 7269,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 29
                                },
                                "end": {
                                  "line": 176,
                                  "column": 34
                                }
                              },
                              "name": "index"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7279,
                      "end": 7316,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 8
                        },
                        "end": {
                          "line": 177,
                          "column": 45
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7283,
                          "end": 7315,
                          "loc": {
                            "start": {
                              "line": 177,
                              "column": 12
                            },
                            "end": {
                              "line": 177,
                              "column": 44
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7283,
                            "end": 7293,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 12
                              },
                              "end": {
                                "line": 177,
                                "column": 22
                              }
                            },
                            "name": "attributes"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7296,
                            "end": 7315,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 25
                              },
                              "end": {
                                "line": 177,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7296,
                              "end": 7304,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 25
                                },
                                "end": {
                                  "line": 177,
                                  "column": 33
                                }
                              },
                              "name": "geometry"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7305,
                              "end": 7315,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 34
                                },
                                "end": {
                                  "line": 177,
                                  "column": 44
                                }
                              },
                              "name": "attributes"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7325,
                      "end": 7367,
                      "loc": {
                        "start": {
                          "line": 178,
                          "column": 8
                        },
                        "end": {
                          "line": 178,
                          "column": 50
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7329,
                          "end": 7366,
                          "loc": {
                            "start": {
                              "line": 178,
                              "column": 12
                            },
                            "end": {
                              "line": 178,
                              "column": 49
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7329,
                            "end": 7338,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 12
                              },
                              "end": {
                                "line": 178,
                                "column": 21
                              }
                            },
                            "name": "positions"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7341,
                            "end": 7366,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 24
                              },
                              "end": {
                                "line": 178,
                                "column": 49
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7341,
                              "end": 7360,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 24
                                },
                                "end": {
                                  "line": 178,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7341,
                                "end": 7351,
                                "loc": {
                                  "start": {
                                    "line": 178,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 178,
                                    "column": 34
                                  }
                                },
                                "name": "attributes"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7352,
                                "end": 7360,
                                "loc": {
                                  "start": {
                                    "line": 178,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 178,
                                    "column": 43
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7361,
                              "end": 7366,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 44
                                },
                                "end": {
                                  "line": 178,
                                  "column": 49
                                }
                              },
                              "name": "array"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 7376,
                      "end": 7461,
                      "loc": {
                        "start": {
                          "line": 179,
                          "column": 8
                        },
                        "end": {
                          "line": 181,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7381,
                        "end": 7408,
                        "loc": {
                          "start": {
                            "line": 179,
                            "column": 13
                          },
                          "end": {
                            "line": 179,
                            "column": 40
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7381,
                          "end": 7394,
                          "loc": {
                            "start": {
                              "line": 179,
                              "column": 13
                            },
                            "end": {
                              "line": 179,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7381,
                            "end": 7391,
                            "loc": {
                              "start": {
                                "line": 179,
                                "column": 13
                              },
                              "end": {
                                "line": 179,
                                "column": 23
                              }
                            },
                            "name": "attributes"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7392,
                            "end": 7394,
                            "loc": {
                              "start": {
                                "line": 179,
                                "column": 24
                              },
                              "end": {
                                "line": 179,
                                "column": 26
                              }
                            },
                            "name": "uv"
                          },
                          "computed": false
                        },
                        "operator": "!==",
                        "right": {
                          "type": "Identifier",
                          "start": 7399,
                          "end": 7408,
                          "loc": {
                            "start": {
                              "line": 179,
                              "column": 31
                            },
                            "end": {
                              "line": 179,
                              "column": 40
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 7411,
                        "end": 7461,
                        "loc": {
                          "start": {
                            "line": 179,
                            "column": 43
                          },
                          "end": {
                            "line": 181,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 7425,
                            "end": 7451,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 12
                              },
                              "end": {
                                "line": 180,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 7425,
                              "end": 7450,
                              "loc": {
                                "start": {
                                  "line": 180,
                                  "column": 12
                                },
                                "end": {
                                  "line": 180,
                                  "column": 37
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 7425,
                                "end": 7428,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 15
                                  }
                                },
                                "name": "uvs"
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 7431,
                                "end": 7450,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 37
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 7431,
                                  "end": 7444,
                                  "loc": {
                                    "start": {
                                      "line": 180,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 180,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 7431,
                                    "end": 7441,
                                    "loc": {
                                      "start": {
                                        "line": 180,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 180,
                                        "column": 28
                                      }
                                    },
                                    "name": "attributes"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7442,
                                    "end": 7444,
                                    "loc": {
                                      "start": {
                                        "line": 180,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 180,
                                        "column": 31
                                      }
                                    },
                                    "name": "uv"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7445,
                                  "end": 7450,
                                  "loc": {
                                    "start": {
                                      "line": 180,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 180,
                                      "column": 37
                                    }
                                  },
                                  "name": "array"
                                },
                                "computed": false
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 7470,
                      "end": 8776,
                      "loc": {
                        "start": {
                          "line": 182,
                          "column": 8
                        },
                        "end": {
                          "line": 209,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7475,
                        "end": 7489,
                        "loc": {
                          "start": {
                            "line": 182,
                            "column": 13
                          },
                          "end": {
                            "line": 182,
                            "column": 27
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 7475,
                          "end": 7480,
                          "loc": {
                            "start": {
                              "line": 182,
                              "column": 13
                            },
                            "end": {
                              "line": 182,
                              "column": 18
                            }
                          },
                          "name": "index"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "Literal",
                          "start": 7485,
                          "end": 7489,
                          "loc": {
                            "start": {
                              "line": 182,
                              "column": 23
                            },
                            "end": {
                              "line": 182,
                              "column": 27
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 7492,
                        "end": 8174,
                        "loc": {
                          "start": {
                            "line": 182,
                            "column": 30
                          },
                          "end": {
                            "line": 196,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 7506,
                            "end": 7532,
                            "loc": {
                              "start": {
                                "line": 183,
                                "column": 12
                              },
                              "end": {
                                "line": 183,
                                "column": 38
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 7510,
                                "end": 7531,
                                "loc": {
                                  "start": {
                                    "line": 183,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 183,
                                    "column": 37
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 7510,
                                  "end": 7517,
                                  "loc": {
                                    "start": {
                                      "line": 183,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 183,
                                      "column": 23
                                    }
                                  },
                                  "name": "indices"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 7520,
                                  "end": 7531,
                                  "loc": {
                                    "start": {
                                      "line": 183,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 183,
                                      "column": 37
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 7520,
                                    "end": 7525,
                                    "loc": {
                                      "start": {
                                        "line": 183,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 183,
                                        "column": 31
                                      }
                                    },
                                    "name": "index"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7526,
                                    "end": 7531,
                                    "loc": {
                                      "start": {
                                        "line": 183,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 183,
                                        "column": 37
                                      }
                                    },
                                    "name": "array"
                                  },
                                  "computed": false
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ForStatement",
                            "start": 7545,
                            "end": 8164,
                            "loc": {
                              "start": {
                                "line": 184,
                                "column": 12
                              },
                              "end": {
                                "line": 195,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 7551,
                              "end": 7580,
                              "loc": {
                                "start": {
                                  "line": 184,
                                  "column": 18
                                },
                                "end": {
                                  "line": 184,
                                  "column": 47
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 7555,
                                  "end": 7560,
                                  "loc": {
                                    "start": {
                                      "line": 184,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 184,
                                      "column": 27
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 7555,
                                    "end": 7556,
                                    "loc": {
                                      "start": {
                                        "line": 184,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 184,
                                        "column": 23
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "init": {
                                    "type": "Literal",
                                    "start": 7559,
                                    "end": 7560,
                                    "loc": {
                                      "start": {
                                        "line": 184,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 184,
                                        "column": 27
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                },
                                {
                                  "type": "VariableDeclarator",
                                  "start": 7562,
                                  "end": 7580,
                                  "loc": {
                                    "start": {
                                      "line": 184,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 184,
                                      "column": 47
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 7562,
                                    "end": 7563,
                                    "loc": {
                                      "start": {
                                        "line": 184,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 184,
                                        "column": 30
                                      }
                                    },
                                    "name": "l"
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "start": 7566,
                                    "end": 7580,
                                    "loc": {
                                      "start": {
                                        "line": 184,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 184,
                                        "column": 47
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 7566,
                                      "end": 7573,
                                      "loc": {
                                        "start": {
                                          "line": 184,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 184,
                                          "column": 40
                                        }
                                      },
                                      "name": "indices"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7574,
                                      "end": 7580,
                                      "loc": {
                                        "start": {
                                          "line": 184,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 184,
                                          "column": 47
                                        }
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 7582,
                              "end": 7587,
                              "loc": {
                                "start": {
                                  "line": 184,
                                  "column": 49
                                },
                                "end": {
                                  "line": 184,
                                  "column": 54
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 7582,
                                "end": 7583,
                                "loc": {
                                  "start": {
                                    "line": 184,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 184,
                                    "column": 50
                                  }
                                },
                                "name": "i"
                              },
                              "operator": "<",
                              "right": {
                                "type": "Identifier",
                                "start": 7586,
                                "end": 7587,
                                "loc": {
                                  "start": {
                                    "line": 184,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 184,
                                    "column": 54
                                  }
                                },
                                "name": "l"
                              }
                            },
                            "update": {
                              "type": "AssignmentExpression",
                              "start": 7589,
                              "end": 7595,
                              "loc": {
                                "start": {
                                  "line": 184,
                                  "column": 56
                                },
                                "end": {
                                  "line": 184,
                                  "column": 62
                                }
                              },
                              "operator": "+=",
                              "left": {
                                "type": "Identifier",
                                "start": 7589,
                                "end": 7590,
                                "loc": {
                                  "start": {
                                    "line": 184,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 184,
                                    "column": 57
                                  }
                                },
                                "name": "i"
                              },
                              "right": {
                                "type": "Literal",
                                "start": 7594,
                                "end": 7595,
                                "loc": {
                                  "start": {
                                    "line": 184,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 184,
                                    "column": 62
                                  }
                                },
                                "value": 3,
                                "rawValue": 3,
                                "raw": "3"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 7598,
                              "end": 8164,
                              "loc": {
                                "start": {
                                  "line": 184,
                                  "column": 65
                                },
                                "end": {
                                  "line": 195,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 7616,
                                  "end": 7633,
                                  "loc": {
                                    "start": {
                                      "line": 185,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 185,
                                      "column": 33
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 7616,
                                    "end": 7632,
                                    "loc": {
                                      "start": {
                                        "line": 185,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 185,
                                        "column": 32
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 7616,
                                      "end": 7617,
                                      "loc": {
                                        "start": {
                                          "line": 185,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 185,
                                          "column": 17
                                        }
                                      },
                                      "name": "a"
                                    },
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 7620,
                                      "end": 7632,
                                      "loc": {
                                        "start": {
                                          "line": 185,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 185,
                                          "column": 32
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7620,
                                        "end": 7627,
                                        "loc": {
                                          "start": {
                                            "line": 185,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 27
                                          }
                                        },
                                        "name": "indices"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7629,
                                        "end": 7630,
                                        "loc": {
                                          "start": {
                                            "line": 185,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 30
                                          }
                                        },
                                        "name": "i"
                                      },
                                      "computed": true
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 7650,
                                  "end": 7671,
                                  "loc": {
                                    "start": {
                                      "line": 186,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 186,
                                      "column": 37
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 7650,
                                    "end": 7670,
                                    "loc": {
                                      "start": {
                                        "line": 186,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 186,
                                        "column": 36
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 7650,
                                      "end": 7651,
                                      "loc": {
                                        "start": {
                                          "line": 186,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 186,
                                          "column": 17
                                        }
                                      },
                                      "name": "b"
                                    },
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 7654,
                                      "end": 7670,
                                      "loc": {
                                        "start": {
                                          "line": 186,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 186,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7654,
                                        "end": 7661,
                                        "loc": {
                                          "start": {
                                            "line": 186,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 186,
                                            "column": 27
                                          }
                                        },
                                        "name": "indices"
                                      },
                                      "property": {
                                        "type": "BinaryExpression",
                                        "start": 7663,
                                        "end": 7668,
                                        "loc": {
                                          "start": {
                                            "line": 186,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 186,
                                            "column": 34
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 7663,
                                          "end": 7664,
                                          "loc": {
                                            "start": {
                                              "line": 186,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 186,
                                              "column": 30
                                            }
                                          },
                                          "name": "i"
                                        },
                                        "operator": "+",
                                        "right": {
                                          "type": "Literal",
                                          "start": 7667,
                                          "end": 7668,
                                          "loc": {
                                            "start": {
                                              "line": 186,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 186,
                                              "column": 34
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      },
                                      "computed": true
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 7688,
                                  "end": 7709,
                                  "loc": {
                                    "start": {
                                      "line": 187,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 187,
                                      "column": 37
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 7688,
                                    "end": 7708,
                                    "loc": {
                                      "start": {
                                        "line": 187,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 187,
                                        "column": 36
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 7688,
                                      "end": 7689,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 17
                                        }
                                      },
                                      "name": "c"
                                    },
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 7692,
                                      "end": 7708,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7692,
                                        "end": 7699,
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 27
                                          }
                                        },
                                        "name": "indices"
                                      },
                                      "property": {
                                        "type": "BinaryExpression",
                                        "start": 7701,
                                        "end": 7706,
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 34
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 7701,
                                          "end": 7702,
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 30
                                            }
                                          },
                                          "name": "i"
                                        },
                                        "operator": "+",
                                        "right": {
                                          "type": "Literal",
                                          "start": 7705,
                                          "end": 7706,
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 34
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      "computed": true
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 7726,
                                  "end": 7833,
                                  "loc": {
                                    "start": {
                                      "line": 188,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 188,
                                      "column": 123
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 7726,
                                    "end": 7832,
                                    "loc": {
                                      "start": {
                                        "line": 188,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 188,
                                        "column": 122
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 7726,
                                      "end": 7738,
                                      "loc": {
                                        "start": {
                                          "line": 188,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 188,
                                          "column": 28
                                        }
                                      },
                                      "name": "intersection"
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 7741,
                                      "end": 7832,
                                      "loc": {
                                        "start": {
                                          "line": 188,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 188,
                                          "column": 122
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 7741,
                                        "end": 7772,
                                        "loc": {
                                          "start": {
                                            "line": 188,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 188,
                                            "column": 62
                                          }
                                        },
                                        "name": "checkBufferGeometryIntersection"
                                      },
                                      "arguments": [
                                        {
                                          "type": "ThisExpression",
                                          "start": 7774,
                                          "end": 7778,
                                          "loc": {
                                            "start": {
                                              "line": 188,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 188,
                                              "column": 68
                                            }
                                          }
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 7780,
                                          "end": 7789,
                                          "loc": {
                                            "start": {
                                              "line": 188,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 188,
                                              "column": 79
                                            }
                                          },
                                          "name": "raycaster"
                                        },
                                        {
                                          "type": "MemberExpression",
                                          "start": 7791,
                                          "end": 7805,
                                          "loc": {
                                            "start": {
                                              "line": 188,
                                              "column": 81
                                            },
                                            "end": {
                                              "line": 188,
                                              "column": 95
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 7791,
                                            "end": 7800,
                                            "loc": {
                                              "start": {
                                                "line": 188,
                                                "column": 81
                                              },
                                              "end": {
                                                "line": 188,
                                                "column": 90
                                              }
                                            },
                                            "name": "raycaster"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 7801,
                                            "end": 7805,
                                            "loc": {
                                              "start": {
                                                "line": 188,
                                                "column": 91
                                              },
                                              "end": {
                                                "line": 188,
                                                "column": 95
                                              }
                                            },
                                            "name": "_ray"
                                          },
                                          "computed": false
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 7807,
                                          "end": 7816,
                                          "loc": {
                                            "start": {
                                              "line": 188,
                                              "column": 97
                                            },
                                            "end": {
                                              "line": 188,
                                              "column": 106
                                            }
                                          },
                                          "name": "positions"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 7818,
                                          "end": 7821,
                                          "loc": {
                                            "start": {
                                              "line": 188,
                                              "column": 108
                                            },
                                            "end": {
                                              "line": 188,
                                              "column": 111
                                            }
                                          },
                                          "name": "uvs"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 7823,
                                          "end": 7824,
                                          "loc": {
                                            "start": {
                                              "line": 188,
                                              "column": 113
                                            },
                                            "end": {
                                              "line": 188,
                                              "column": 114
                                            }
                                          },
                                          "name": "a"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 7826,
                                          "end": 7827,
                                          "loc": {
                                            "start": {
                                              "line": 188,
                                              "column": 116
                                            },
                                            "end": {
                                              "line": 188,
                                              "column": 117
                                            }
                                          },
                                          "name": "b"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 7829,
                                          "end": 7830,
                                          "loc": {
                                            "start": {
                                              "line": 188,
                                              "column": 119
                                            },
                                            "end": {
                                              "line": 188,
                                              "column": 120
                                            }
                                          },
                                          "name": "c"
                                        }
                                      ]
                                    }
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 7850,
                                  "end": 8150,
                                  "loc": {
                                    "start": {
                                      "line": 189,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 17
                                    }
                                  },
                                  "test": {
                                    "type": "Identifier",
                                    "start": 7855,
                                    "end": 7867,
                                    "loc": {
                                      "start": {
                                        "line": 189,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 189,
                                        "column": 33
                                      }
                                    },
                                    "name": "intersection"
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 7870,
                                    "end": 8150,
                                    "loc": {
                                      "start": {
                                        "line": 189,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 7892,
                                        "end": 7937,
                                        "loc": {
                                          "start": {
                                            "line": 190,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 190,
                                            "column": 65
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 7892,
                                          "end": 7936,
                                          "loc": {
                                            "start": {
                                              "line": 190,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 190,
                                              "column": 64
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 7892,
                                            "end": 7914,
                                            "loc": {
                                              "start": {
                                                "line": 190,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 190,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 7892,
                                              "end": 7904,
                                              "loc": {
                                                "start": {
                                                  "line": 190,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 190,
                                                  "column": 32
                                                }
                                              },
                                              "name": "intersection"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 7905,
                                              "end": 7914,
                                              "loc": {
                                                "start": {
                                                  "line": 190,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 190,
                                                  "column": 42
                                                }
                                              },
                                              "name": "faceIndex"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 7917,
                                            "end": 7936,
                                            "loc": {
                                              "start": {
                                                "line": 190,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 190,
                                                "column": 64
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 7917,
                                              "end": 7927,
                                              "loc": {
                                                "start": {
                                                  "line": 190,
                                                  "column": 45
                                                },
                                                "end": {
                                                  "line": 190,
                                                  "column": 55
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 7917,
                                                "end": 7921,
                                                "loc": {
                                                  "start": {
                                                    "line": 190,
                                                    "column": 45
                                                  },
                                                  "end": {
                                                    "line": 190,
                                                    "column": 49
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 7922,
                                                "end": 7927,
                                                "loc": {
                                                  "start": {
                                                    "line": 190,
                                                    "column": 50
                                                  },
                                                  "end": {
                                                    "line": 190,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "floor"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "BinaryExpression",
                                                "start": 7929,
                                                "end": 7934,
                                                "loc": {
                                                  "start": {
                                                    "line": 190,
                                                    "column": 57
                                                  },
                                                  "end": {
                                                    "line": 190,
                                                    "column": 62
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 7929,
                                                  "end": 7930,
                                                  "loc": {
                                                    "start": {
                                                      "line": 190,
                                                      "column": 57
                                                    },
                                                    "end": {
                                                      "line": 190,
                                                      "column": 58
                                                    }
                                                  },
                                                  "name": "i"
                                                },
                                                "operator": "/",
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 7933,
                                                  "end": 7934,
                                                  "loc": {
                                                    "start": {
                                                      "line": 190,
                                                      "column": 61
                                                    },
                                                    "end": {
                                                      "line": 190,
                                                      "column": 62
                                                    }
                                                  },
                                                  "value": 3,
                                                  "rawValue": 3,
                                                  "raw": "3"
                                                }
                                              }
                                            ]
                                          }
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " triangle number in indices buffer semantics",
                                            "start": 7938,
                                            "end": 7984,
                                            "loc": {
                                              "start": {
                                                "line": 190,
                                                "column": 66
                                              },
                                              "end": {
                                                "line": 190,
                                                "column": 112
                                              }
                                            },
                                            "range": [
                                              7938,
                                              7984
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 8005,
                                        "end": 8037,
                                        "loc": {
                                          "start": {
                                            "line": 191,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 191,
                                            "column": 52
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 8005,
                                          "end": 8036,
                                          "loc": {
                                            "start": {
                                              "line": 191,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 191,
                                              "column": 51
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 8005,
                                            "end": 8020,
                                            "loc": {
                                              "start": {
                                                "line": 191,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 191,
                                                "column": 35
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 8005,
                                              "end": 8015,
                                              "loc": {
                                                "start": {
                                                  "line": 191,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 191,
                                                  "column": 30
                                                }
                                              },
                                              "name": "intersects",
                                              "leadingComments": null
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 8016,
                                              "end": 8020,
                                              "loc": {
                                                "start": {
                                                  "line": 191,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 191,
                                                  "column": 35
                                                }
                                              },
                                              "name": "push"
                                            },
                                            "computed": false,
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 8022,
                                              "end": 8034,
                                              "loc": {
                                                "start": {
                                                  "line": 191,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 191,
                                                  "column": 49
                                                }
                                              },
                                              "name": "intersection"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " triangle number in indices buffer semantics",
                                            "start": 7938,
                                            "end": 7984,
                                            "loc": {
                                              "start": {
                                                "line": 190,
                                                "column": 66
                                              },
                                              "end": {
                                                "line": 190,
                                                "column": 112
                                              }
                                            },
                                            "range": [
                                              7938,
                                              7984
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 8058,
                                        "end": 8132,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 31
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 8062,
                                          "end": 8099,
                                          "loc": {
                                            "start": {
                                              "line": 192,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 192,
                                              "column": 61
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 8062,
                                            "end": 8070,
                                            "loc": {
                                              "start": {
                                                "line": 192,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 192,
                                                "column": 32
                                              }
                                            },
                                            "name": "approach"
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 8075,
                                            "end": 8099,
                                            "loc": {
                                              "start": {
                                                "line": 192,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 192,
                                                "column": 61
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 8075,
                                              "end": 8093,
                                              "loc": {
                                                "start": {
                                                  "line": 192,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 192,
                                                  "column": 55
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 8075,
                                                "end": 8084,
                                                "loc": {
                                                  "start": {
                                                    "line": 192,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 192,
                                                    "column": 46
                                                  }
                                                },
                                                "name": "Raycaster"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 8085,
                                                "end": 8093,
                                                "loc": {
                                                  "start": {
                                                    "line": 192,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 192,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "Approach"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 8094,
                                              "end": 8099,
                                              "loc": {
                                                "start": {
                                                  "line": 192,
                                                  "column": 56
                                                },
                                                "end": {
                                                  "line": 192,
                                                  "column": 61
                                                }
                                              },
                                              "name": "First"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 8125,
                                          "end": 8132,
                                          "loc": {
                                            "start": {
                                              "line": 193,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 193,
                                              "column": 31
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 8180,
                        "end": 8776,
                        "loc": {
                          "start": {
                            "line": 196,
                            "column": 15
                          },
                          "end": {
                            "line": 209,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ForStatement",
                            "start": 8194,
                            "end": 8766,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 12
                              },
                              "end": {
                                "line": 208,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 8200,
                              "end": 8231,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 18
                                },
                                "end": {
                                  "line": 197,
                                  "column": 49
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 8204,
                                  "end": 8209,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 27
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 8204,
                                    "end": 8205,
                                    "loc": {
                                      "start": {
                                        "line": 197,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 197,
                                        "column": 23
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "init": {
                                    "type": "Literal",
                                    "start": 8208,
                                    "end": 8209,
                                    "loc": {
                                      "start": {
                                        "line": 197,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 197,
                                        "column": 27
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                },
                                {
                                  "type": "VariableDeclarator",
                                  "start": 8211,
                                  "end": 8231,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 49
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 8211,
                                    "end": 8212,
                                    "loc": {
                                      "start": {
                                        "line": 197,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 197,
                                        "column": 30
                                      }
                                    },
                                    "name": "l"
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "start": 8215,
                                    "end": 8231,
                                    "loc": {
                                      "start": {
                                        "line": 197,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 197,
                                        "column": 49
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8215,
                                      "end": 8224,
                                      "loc": {
                                        "start": {
                                          "line": 197,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 197,
                                          "column": 42
                                        }
                                      },
                                      "name": "positions"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8225,
                                      "end": 8231,
                                      "loc": {
                                        "start": {
                                          "line": 197,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 197,
                                          "column": 49
                                        }
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 8233,
                              "end": 8238,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 51
                                },
                                "end": {
                                  "line": 197,
                                  "column": 56
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 8233,
                                "end": 8234,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 52
                                  }
                                },
                                "name": "i"
                              },
                              "operator": "<",
                              "right": {
                                "type": "Identifier",
                                "start": 8237,
                                "end": 8238,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 56
                                  }
                                },
                                "name": "l"
                              }
                            },
                            "update": {
                              "type": "AssignmentExpression",
                              "start": 8240,
                              "end": 8246,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 58
                                },
                                "end": {
                                  "line": 197,
                                  "column": 64
                                }
                              },
                              "operator": "+=",
                              "left": {
                                "type": "Identifier",
                                "start": 8240,
                                "end": 8241,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 59
                                  }
                                },
                                "name": "i"
                              },
                              "right": {
                                "type": "Literal",
                                "start": 8245,
                                "end": 8246,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 64
                                  }
                                },
                                "value": 9,
                                "rawValue": 9,
                                "raw": "9"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 8249,
                              "end": 8766,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 67
                                },
                                "end": {
                                  "line": 208,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8267,
                                  "end": 8277,
                                  "loc": {
                                    "start": {
                                      "line": 198,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 198,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 8267,
                                    "end": 8276,
                                    "loc": {
                                      "start": {
                                        "line": 198,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 198,
                                        "column": 25
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 8267,
                                      "end": 8268,
                                      "loc": {
                                        "start": {
                                          "line": 198,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 198,
                                          "column": 17
                                        }
                                      },
                                      "name": "a"
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 8271,
                                      "end": 8276,
                                      "loc": {
                                        "start": {
                                          "line": 198,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 198,
                                          "column": 25
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 8271,
                                        "end": 8272,
                                        "loc": {
                                          "start": {
                                            "line": 198,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 198,
                                            "column": 21
                                          }
                                        },
                                        "name": "i"
                                      },
                                      "operator": "/",
                                      "right": {
                                        "type": "Literal",
                                        "start": 8275,
                                        "end": 8276,
                                        "loc": {
                                          "start": {
                                            "line": 198,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 198,
                                            "column": 25
                                          }
                                        },
                                        "value": 3,
                                        "rawValue": 3,
                                        "raw": "3"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8294,
                                  "end": 8304,
                                  "loc": {
                                    "start": {
                                      "line": 199,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 199,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 8294,
                                    "end": 8303,
                                    "loc": {
                                      "start": {
                                        "line": 199,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 199,
                                        "column": 25
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 8294,
                                      "end": 8295,
                                      "loc": {
                                        "start": {
                                          "line": 199,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 199,
                                          "column": 17
                                        }
                                      },
                                      "name": "b"
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 8298,
                                      "end": 8303,
                                      "loc": {
                                        "start": {
                                          "line": 199,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 199,
                                          "column": 25
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 8298,
                                        "end": 8299,
                                        "loc": {
                                          "start": {
                                            "line": 199,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 199,
                                            "column": 21
                                          }
                                        },
                                        "name": "a"
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 8302,
                                        "end": 8303,
                                        "loc": {
                                          "start": {
                                            "line": 199,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 199,
                                            "column": 25
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8321,
                                  "end": 8331,
                                  "loc": {
                                    "start": {
                                      "line": 200,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 200,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 8321,
                                    "end": 8330,
                                    "loc": {
                                      "start": {
                                        "line": 200,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 200,
                                        "column": 25
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 8321,
                                      "end": 8322,
                                      "loc": {
                                        "start": {
                                          "line": 200,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 200,
                                          "column": 17
                                        }
                                      },
                                      "name": "c"
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 8325,
                                      "end": 8330,
                                      "loc": {
                                        "start": {
                                          "line": 200,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 200,
                                          "column": 25
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 8325,
                                        "end": 8326,
                                        "loc": {
                                          "start": {
                                            "line": 200,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 200,
                                            "column": 21
                                          }
                                        },
                                        "name": "a"
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 8329,
                                        "end": 8330,
                                        "loc": {
                                          "start": {
                                            "line": 200,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 200,
                                            "column": 25
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8348,
                                  "end": 8455,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 123
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 8348,
                                    "end": 8454,
                                    "loc": {
                                      "start": {
                                        "line": 201,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 201,
                                        "column": 122
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 8348,
                                      "end": 8360,
                                      "loc": {
                                        "start": {
                                          "line": 201,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 201,
                                          "column": 28
                                        }
                                      },
                                      "name": "intersection"
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 8363,
                                      "end": 8454,
                                      "loc": {
                                        "start": {
                                          "line": 201,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 201,
                                          "column": 122
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 8363,
                                        "end": 8394,
                                        "loc": {
                                          "start": {
                                            "line": 201,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 201,
                                            "column": 62
                                          }
                                        },
                                        "name": "checkBufferGeometryIntersection"
                                      },
                                      "arguments": [
                                        {
                                          "type": "ThisExpression",
                                          "start": 8396,
                                          "end": 8400,
                                          "loc": {
                                            "start": {
                                              "line": 201,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 201,
                                              "column": 68
                                            }
                                          }
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 8402,
                                          "end": 8411,
                                          "loc": {
                                            "start": {
                                              "line": 201,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 201,
                                              "column": 79
                                            }
                                          },
                                          "name": "raycaster"
                                        },
                                        {
                                          "type": "MemberExpression",
                                          "start": 8413,
                                          "end": 8427,
                                          "loc": {
                                            "start": {
                                              "line": 201,
                                              "column": 81
                                            },
                                            "end": {
                                              "line": 201,
                                              "column": 95
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8413,
                                            "end": 8422,
                                            "loc": {
                                              "start": {
                                                "line": 201,
                                                "column": 81
                                              },
                                              "end": {
                                                "line": 201,
                                                "column": 90
                                              }
                                            },
                                            "name": "raycaster"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8423,
                                            "end": 8427,
                                            "loc": {
                                              "start": {
                                                "line": 201,
                                                "column": 91
                                              },
                                              "end": {
                                                "line": 201,
                                                "column": 95
                                              }
                                            },
                                            "name": "_ray"
                                          },
                                          "computed": false
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 8429,
                                          "end": 8438,
                                          "loc": {
                                            "start": {
                                              "line": 201,
                                              "column": 97
                                            },
                                            "end": {
                                              "line": 201,
                                              "column": 106
                                            }
                                          },
                                          "name": "positions"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 8440,
                                          "end": 8443,
                                          "loc": {
                                            "start": {
                                              "line": 201,
                                              "column": 108
                                            },
                                            "end": {
                                              "line": 201,
                                              "column": 111
                                            }
                                          },
                                          "name": "uvs"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 8445,
                                          "end": 8446,
                                          "loc": {
                                            "start": {
                                              "line": 201,
                                              "column": 113
                                            },
                                            "end": {
                                              "line": 201,
                                              "column": 114
                                            }
                                          },
                                          "name": "a"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 8448,
                                          "end": 8449,
                                          "loc": {
                                            "start": {
                                              "line": 201,
                                              "column": 116
                                            },
                                            "end": {
                                              "line": 201,
                                              "column": 117
                                            }
                                          },
                                          "name": "b"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 8451,
                                          "end": 8452,
                                          "loc": {
                                            "start": {
                                              "line": 201,
                                              "column": 119
                                            },
                                            "end": {
                                              "line": 201,
                                              "column": 120
                                            }
                                          },
                                          "name": "c"
                                        }
                                      ]
                                    }
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 8472,
                                  "end": 8752,
                                  "loc": {
                                    "start": {
                                      "line": 202,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 207,
                                      "column": 17
                                    }
                                  },
                                  "test": {
                                    "type": "Identifier",
                                    "start": 8477,
                                    "end": 8489,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 202,
                                        "column": 33
                                      }
                                    },
                                    "name": "intersection"
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 8492,
                                    "end": 8752,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 207,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 8514,
                                        "end": 8537,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 43
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 8514,
                                          "end": 8536,
                                          "loc": {
                                            "start": {
                                              "line": 203,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 203,
                                              "column": 42
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 8514,
                                            "end": 8532,
                                            "loc": {
                                              "start": {
                                                "line": 203,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 203,
                                                "column": 38
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 8514,
                                              "end": 8526,
                                              "loc": {
                                                "start": {
                                                  "line": 203,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 203,
                                                  "column": 32
                                                }
                                              },
                                              "name": "intersection"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 8527,
                                              "end": 8532,
                                              "loc": {
                                                "start": {
                                                  "line": 203,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 203,
                                                  "column": 38
                                                }
                                              },
                                              "name": "index"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "Identifier",
                                            "start": 8535,
                                            "end": 8536,
                                            "loc": {
                                              "start": {
                                                "line": 203,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 203,
                                                "column": 42
                                              }
                                            },
                                            "name": "a"
                                          }
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " triangle number in positions buffer semantics",
                                            "start": 8538,
                                            "end": 8586,
                                            "loc": {
                                              "start": {
                                                "line": 203,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 203,
                                                "column": 92
                                              }
                                            },
                                            "range": [
                                              8538,
                                              8586
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 8607,
                                        "end": 8639,
                                        "loc": {
                                          "start": {
                                            "line": 204,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 204,
                                            "column": 52
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 8607,
                                          "end": 8638,
                                          "loc": {
                                            "start": {
                                              "line": 204,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 204,
                                              "column": 51
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 8607,
                                            "end": 8622,
                                            "loc": {
                                              "start": {
                                                "line": 204,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 204,
                                                "column": 35
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 8607,
                                              "end": 8617,
                                              "loc": {
                                                "start": {
                                                  "line": 204,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 204,
                                                  "column": 30
                                                }
                                              },
                                              "name": "intersects",
                                              "leadingComments": null
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 8618,
                                              "end": 8622,
                                              "loc": {
                                                "start": {
                                                  "line": 204,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 204,
                                                  "column": 35
                                                }
                                              },
                                              "name": "push"
                                            },
                                            "computed": false,
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 8624,
                                              "end": 8636,
                                              "loc": {
                                                "start": {
                                                  "line": 204,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 204,
                                                  "column": 49
                                                }
                                              },
                                              "name": "intersection"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " triangle number in positions buffer semantics",
                                            "start": 8538,
                                            "end": 8586,
                                            "loc": {
                                              "start": {
                                                "line": 203,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 203,
                                                "column": 92
                                              }
                                            },
                                            "range": [
                                              8538,
                                              8586
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 8660,
                                        "end": 8734,
                                        "loc": {
                                          "start": {
                                            "line": 205,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 206,
                                            "column": 31
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 8664,
                                          "end": 8701,
                                          "loc": {
                                            "start": {
                                              "line": 205,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 205,
                                              "column": 61
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 8664,
                                            "end": 8672,
                                            "loc": {
                                              "start": {
                                                "line": 205,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 205,
                                                "column": 32
                                              }
                                            },
                                            "name": "approach"
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 8677,
                                            "end": 8701,
                                            "loc": {
                                              "start": {
                                                "line": 205,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 205,
                                                "column": 61
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 8677,
                                              "end": 8695,
                                              "loc": {
                                                "start": {
                                                  "line": 205,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 205,
                                                  "column": 55
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 8677,
                                                "end": 8686,
                                                "loc": {
                                                  "start": {
                                                    "line": 205,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 205,
                                                    "column": 46
                                                  }
                                                },
                                                "name": "Raycaster"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 8687,
                                                "end": 8695,
                                                "loc": {
                                                  "start": {
                                                    "line": 205,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 205,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "Approach"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 8696,
                                              "end": 8701,
                                              "loc": {
                                                "start": {
                                                  "line": 205,
                                                  "column": 56
                                                },
                                                "end": {
                                                  "line": 205,
                                                  "column": 61
                                                }
                                              },
                                              "name": "First"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 8727,
                                          "end": 8734,
                                          "loc": {
                                            "start": {
                                              "line": 206,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 206,
                                              "column": 31
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                },
                "alternate": {
                  "type": "IfStatement",
                  "start": 8788,
                  "end": 11587,
                  "loc": {
                    "start": {
                      "line": 210,
                      "column": 11
                    },
                    "end": {
                      "line": 262,
                      "column": 5
                    }
                  },
                  "test": {
                    "type": "BinaryExpression",
                    "start": 8793,
                    "end": 8827,
                    "loc": {
                      "start": {
                        "line": 210,
                        "column": 16
                      },
                      "end": {
                        "line": 210,
                        "column": 50
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 8793,
                      "end": 8801,
                      "loc": {
                        "start": {
                          "line": 210,
                          "column": 16
                        },
                        "end": {
                          "line": 210,
                          "column": 24
                        }
                      },
                      "name": "geometry"
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "MemberExpression",
                      "start": 8813,
                      "end": 8827,
                      "loc": {
                        "start": {
                          "line": 210,
                          "column": 36
                        },
                        "end": {
                          "line": 210,
                          "column": 50
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 8813,
                        "end": 8818,
                        "loc": {
                          "start": {
                            "line": 210,
                            "column": 36
                          },
                          "end": {
                            "line": 210,
                            "column": 41
                          }
                        },
                        "name": "THREE"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 8819,
                        "end": 8827,
                        "loc": {
                          "start": {
                            "line": 210,
                            "column": 42
                          },
                          "end": {
                            "line": 210,
                            "column": 50
                          }
                        },
                        "name": "Geometry"
                      },
                      "computed": false
                    }
                  },
                  "consequent": {
                    "type": "BlockStatement",
                    "start": 8830,
                    "end": 11587,
                    "loc": {
                      "start": {
                        "line": 210,
                        "column": 53
                      },
                      "end": {
                        "line": 262,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "VariableDeclaration",
                        "start": 8840,
                        "end": 8858,
                        "loc": {
                          "start": {
                            "line": 211,
                            "column": 8
                          },
                          "end": {
                            "line": 211,
                            "column": 26
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 8844,
                            "end": 8847,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 12
                              },
                              "end": {
                                "line": 211,
                                "column": 15
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 8844,
                              "end": 8847,
                              "loc": {
                                "start": {
                                  "line": 211,
                                  "column": 12
                                },
                                "end": {
                                  "line": 211,
                                  "column": 15
                                }
                              },
                              "name": "fvA"
                            },
                            "init": null
                          },
                          {
                            "type": "VariableDeclarator",
                            "start": 8849,
                            "end": 8852,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 17
                              },
                              "end": {
                                "line": 211,
                                "column": 20
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 8849,
                              "end": 8852,
                              "loc": {
                                "start": {
                                  "line": 211,
                                  "column": 17
                                },
                                "end": {
                                  "line": 211,
                                  "column": 20
                                }
                              },
                              "name": "fvB"
                            },
                            "init": null
                          },
                          {
                            "type": "VariableDeclarator",
                            "start": 8854,
                            "end": 8857,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 22
                              },
                              "end": {
                                "line": 211,
                                "column": 25
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 8854,
                              "end": 8857,
                              "loc": {
                                "start": {
                                  "line": 211,
                                  "column": 22
                                },
                                "end": {
                                  "line": 211,
                                  "column": 25
                                }
                              },
                              "name": "fvC"
                            },
                            "init": null
                          }
                        ],
                        "kind": "var"
                      },
                      {
                        "type": "VariableDeclaration",
                        "start": 8867,
                        "end": 8928,
                        "loc": {
                          "start": {
                            "line": 212,
                            "column": 8
                          },
                          "end": {
                            "line": 212,
                            "column": 69
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 8871,
                            "end": 8927,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 12
                              },
                              "end": {
                                "line": 212,
                                "column": 68
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 8871,
                              "end": 8885,
                              "loc": {
                                "start": {
                                  "line": 212,
                                  "column": 12
                                },
                                "end": {
                                  "line": 212,
                                  "column": 26
                                }
                              },
                              "name": "isFaceMaterial"
                            },
                            "init": {
                              "type": "BinaryExpression",
                              "start": 8888,
                              "end": 8927,
                              "loc": {
                                "start": {
                                  "line": 212,
                                  "column": 29
                                },
                                "end": {
                                  "line": 212,
                                  "column": 68
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 8888,
                                "end": 8896,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 37
                                  }
                                },
                                "name": "material"
                              },
                              "operator": "instanceof",
                              "right": {
                                "type": "MemberExpression",
                                "start": 8908,
                                "end": 8927,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 68
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8908,
                                  "end": 8913,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 54
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8914,
                                  "end": 8927,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 68
                                    }
                                  },
                                  "name": "MultiMaterial"
                                },
                                "computed": false
                              }
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      {
                        "type": "VariableDeclaration",
                        "start": 8937,
                        "end": 9005,
                        "loc": {
                          "start": {
                            "line": 213,
                            "column": 8
                          },
                          "end": {
                            "line": 213,
                            "column": 76
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 8941,
                            "end": 9004,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 12
                              },
                              "end": {
                                "line": 213,
                                "column": 75
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 8941,
                              "end": 8950,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 12
                                },
                                "end": {
                                  "line": 213,
                                  "column": 21
                                }
                              },
                              "name": "materials"
                            },
                            "init": {
                              "type": "ConditionalExpression",
                              "start": 8953,
                              "end": 9004,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 24
                                },
                                "end": {
                                  "line": 213,
                                  "column": 75
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 8953,
                                "end": 8976,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 47
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 8953,
                                  "end": 8967,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 38
                                    }
                                  },
                                  "name": "isFaceMaterial"
                                },
                                "operator": "===",
                                "right": {
                                  "type": "Literal",
                                  "start": 8972,
                                  "end": 8976,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 47
                                    }
                                  },
                                  "value": true,
                                  "rawValue": true,
                                  "raw": "true"
                                }
                              },
                              "consequent": {
                                "type": "MemberExpression",
                                "start": 8979,
                                "end": 8997,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 68
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8979,
                                  "end": 8987,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 58
                                    }
                                  },
                                  "name": "material"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8988,
                                  "end": 8997,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 68
                                    }
                                  },
                                  "name": "materials"
                                },
                                "computed": false
                              },
                              "alternate": {
                                "type": "Literal",
                                "start": 9000,
                                "end": 9004,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 75
                                  }
                                },
                                "value": null,
                                "rawValue": null,
                                "raw": "null"
                              }
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      {
                        "type": "VariableDeclaration",
                        "start": 9014,
                        "end": 9047,
                        "loc": {
                          "start": {
                            "line": 214,
                            "column": 8
                          },
                          "end": {
                            "line": 214,
                            "column": 41
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 9018,
                            "end": 9046,
                            "loc": {
                              "start": {
                                "line": 214,
                                "column": 12
                              },
                              "end": {
                                "line": 214,
                                "column": 40
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 9018,
                              "end": 9026,
                              "loc": {
                                "start": {
                                  "line": 214,
                                  "column": 12
                                },
                                "end": {
                                  "line": 214,
                                  "column": 20
                                }
                              },
                              "name": "vertices"
                            },
                            "init": {
                              "type": "MemberExpression",
                              "start": 9029,
                              "end": 9046,
                              "loc": {
                                "start": {
                                  "line": 214,
                                  "column": 23
                                },
                                "end": {
                                  "line": 214,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 9029,
                                "end": 9037,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 31
                                  }
                                },
                                "name": "geometry"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9038,
                                "end": 9046,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 40
                                  }
                                },
                                "name": "vertices"
                              },
                              "computed": false
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      {
                        "type": "VariableDeclaration",
                        "start": 9056,
                        "end": 9083,
                        "loc": {
                          "start": {
                            "line": 215,
                            "column": 8
                          },
                          "end": {
                            "line": 215,
                            "column": 35
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 9060,
                            "end": 9082,
                            "loc": {
                              "start": {
                                "line": 215,
                                "column": 12
                              },
                              "end": {
                                "line": 215,
                                "column": 34
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 9060,
                              "end": 9065,
                              "loc": {
                                "start": {
                                  "line": 215,
                                  "column": 12
                                },
                                "end": {
                                  "line": 215,
                                  "column": 17
                                }
                              },
                              "name": "faces"
                            },
                            "init": {
                              "type": "MemberExpression",
                              "start": 9068,
                              "end": 9082,
                              "loc": {
                                "start": {
                                  "line": 215,
                                  "column": 20
                                },
                                "end": {
                                  "line": 215,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 9068,
                                "end": 9076,
                                "loc": {
                                  "start": {
                                    "line": 215,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 215,
                                    "column": 28
                                  }
                                },
                                "name": "geometry"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9077,
                                "end": 9082,
                                "loc": {
                                  "start": {
                                    "line": 215,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 215,
                                    "column": 34
                                  }
                                },
                                "name": "faces"
                              },
                              "computed": false
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      {
                        "type": "VariableDeclaration",
                        "start": 9092,
                        "end": 9140,
                        "loc": {
                          "start": {
                            "line": 216,
                            "column": 8
                          },
                          "end": {
                            "line": 216,
                            "column": 56
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 9096,
                            "end": 9139,
                            "loc": {
                              "start": {
                                "line": 216,
                                "column": 12
                              },
                              "end": {
                                "line": 216,
                                "column": 55
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 9096,
                              "end": 9109,
                              "loc": {
                                "start": {
                                  "line": 216,
                                  "column": 12
                                },
                                "end": {
                                  "line": 216,
                                  "column": 25
                                }
                              },
                              "name": "faceVertexUvs"
                            },
                            "init": {
                              "type": "MemberExpression",
                              "start": 9112,
                              "end": 9139,
                              "loc": {
                                "start": {
                                  "line": 216,
                                  "column": 28
                                },
                                "end": {
                                  "line": 216,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9112,
                                "end": 9134,
                                "loc": {
                                  "start": {
                                    "line": 216,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 216,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9112,
                                  "end": 9120,
                                  "loc": {
                                    "start": {
                                      "line": 216,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 216,
                                      "column": 36
                                    }
                                  },
                                  "name": "geometry"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9121,
                                  "end": 9134,
                                  "loc": {
                                    "start": {
                                      "line": 216,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 216,
                                      "column": 50
                                    }
                                  },
                                  "name": "faceVertexUvs"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 9136,
                                "end": 9137,
                                "loc": {
                                  "start": {
                                    "line": 216,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 216,
                                    "column": 53
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      {
                        "type": "IfStatement",
                        "start": 9149,
                        "end": 9201,
                        "loc": {
                          "start": {
                            "line": 217,
                            "column": 8
                          },
                          "end": {
                            "line": 217,
                            "column": 60
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 9154,
                          "end": 9178,
                          "loc": {
                            "start": {
                              "line": 217,
                              "column": 13
                            },
                            "end": {
                              "line": 217,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 9154,
                            "end": 9174,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 13
                              },
                              "end": {
                                "line": 217,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9154,
                              "end": 9167,
                              "loc": {
                                "start": {
                                  "line": 217,
                                  "column": 13
                                },
                                "end": {
                                  "line": 217,
                                  "column": 26
                                }
                              },
                              "name": "faceVertexUvs"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9168,
                              "end": 9174,
                              "loc": {
                                "start": {
                                  "line": 217,
                                  "column": 27
                                },
                                "end": {
                                  "line": 217,
                                  "column": 33
                                }
                              },
                              "name": "length"
                            },
                            "computed": false
                          },
                          "operator": ">",
                          "right": {
                            "type": "Literal",
                            "start": 9177,
                            "end": 9178,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 36
                              },
                              "end": {
                                "line": 217,
                                "column": 37
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          }
                        },
                        "consequent": {
                          "type": "ExpressionStatement",
                          "start": 9181,
                          "end": 9201,
                          "loc": {
                            "start": {
                              "line": 217,
                              "column": 40
                            },
                            "end": {
                              "line": 217,
                              "column": 60
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 9181,
                            "end": 9200,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 40
                              },
                              "end": {
                                "line": 217,
                                "column": 59
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 9181,
                              "end": 9184,
                              "loc": {
                                "start": {
                                  "line": 217,
                                  "column": 40
                                },
                                "end": {
                                  "line": 217,
                                  "column": 43
                                }
                              },
                              "name": "uvs"
                            },
                            "right": {
                              "type": "Identifier",
                              "start": 9187,
                              "end": 9200,
                              "loc": {
                                "start": {
                                  "line": 217,
                                  "column": 46
                                },
                                "end": {
                                  "line": 217,
                                  "column": 59
                                }
                              },
                              "name": "faceVertexUvs"
                            }
                          }
                        },
                        "alternate": null
                      },
                      {
                        "type": "ForStatement",
                        "start": 9210,
                        "end": 11581,
                        "loc": {
                          "start": {
                            "line": 218,
                            "column": 8
                          },
                          "end": {
                            "line": 261,
                            "column": 9
                          }
                        },
                        "init": {
                          "type": "VariableDeclaration",
                          "start": 9216,
                          "end": 9244,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 14
                            },
                            "end": {
                              "line": 218,
                              "column": 42
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 9220,
                              "end": 9225,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 18
                                },
                                "end": {
                                  "line": 218,
                                  "column": 23
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 9220,
                                "end": 9221,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 19
                                  }
                                },
                                "name": "f"
                              },
                              "init": {
                                "type": "Literal",
                                "start": 9224,
                                "end": 9225,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 23
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            },
                            {
                              "type": "VariableDeclarator",
                              "start": 9227,
                              "end": 9244,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 25
                                },
                                "end": {
                                  "line": 218,
                                  "column": 42
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 9227,
                                "end": 9229,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 27
                                  }
                                },
                                "name": "fl"
                              },
                              "init": {
                                "type": "MemberExpression",
                                "start": 9232,
                                "end": 9244,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9232,
                                  "end": 9237,
                                  "loc": {
                                    "start": {
                                      "line": 218,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 218,
                                      "column": 35
                                    }
                                  },
                                  "name": "faces"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9238,
                                  "end": 9244,
                                  "loc": {
                                    "start": {
                                      "line": 218,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 218,
                                      "column": 42
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              }
                            }
                          ],
                          "kind": "var"
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 9246,
                          "end": 9252,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 44
                            },
                            "end": {
                              "line": 218,
                              "column": 50
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 9246,
                            "end": 9247,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 44
                              },
                              "end": {
                                "line": 218,
                                "column": 45
                              }
                            },
                            "name": "f"
                          },
                          "operator": "<",
                          "right": {
                            "type": "Identifier",
                            "start": 9250,
                            "end": 9252,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 48
                              },
                              "end": {
                                "line": 218,
                                "column": 50
                              }
                            },
                            "name": "fl"
                          }
                        },
                        "update": {
                          "type": "UpdateExpression",
                          "start": 9254,
                          "end": 9258,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 52
                            },
                            "end": {
                              "line": 218,
                              "column": 56
                            }
                          },
                          "operator": "++",
                          "prefix": false,
                          "argument": {
                            "type": "Identifier",
                            "start": 9254,
                            "end": 9255,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 52
                              },
                              "end": {
                                "line": 218,
                                "column": 53
                              }
                            },
                            "name": "f"
                          }
                        },
                        "body": {
                          "type": "BlockStatement",
                          "start": 9261,
                          "end": 11581,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 59
                            },
                            "end": {
                              "line": 261,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "VariableDeclaration",
                              "start": 9275,
                              "end": 9297,
                              "loc": {
                                "start": {
                                  "line": 219,
                                  "column": 12
                                },
                                "end": {
                                  "line": 219,
                                  "column": 34
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 9279,
                                  "end": 9296,
                                  "loc": {
                                    "start": {
                                      "line": 219,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 219,
                                      "column": 33
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 9279,
                                    "end": 9283,
                                    "loc": {
                                      "start": {
                                        "line": 219,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 219,
                                        "column": 20
                                      }
                                    },
                                    "name": "face"
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "start": 9286,
                                    "end": 9296,
                                    "loc": {
                                      "start": {
                                        "line": 219,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 219,
                                        "column": 33
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9286,
                                      "end": 9291,
                                      "loc": {
                                        "start": {
                                          "line": 219,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 219,
                                          "column": 28
                                        }
                                      },
                                      "name": "faces"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9293,
                                      "end": 9294,
                                      "loc": {
                                        "start": {
                                          "line": 219,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 219,
                                          "column": 31
                                        }
                                      },
                                      "name": "f"
                                    },
                                    "computed": true
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 9310,
                              "end": 9398,
                              "loc": {
                                "start": {
                                  "line": 220,
                                  "column": 12
                                },
                                "end": {
                                  "line": 220,
                                  "column": 100
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 9314,
                                  "end": 9397,
                                  "loc": {
                                    "start": {
                                      "line": 220,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 220,
                                      "column": 99
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 9314,
                                    "end": 9326,
                                    "loc": {
                                      "start": {
                                        "line": 220,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 220,
                                        "column": 28
                                      }
                                    },
                                    "name": "faceMaterial"
                                  },
                                  "init": {
                                    "type": "ConditionalExpression",
                                    "start": 9329,
                                    "end": 9397,
                                    "loc": {
                                      "start": {
                                        "line": 220,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 220,
                                        "column": 99
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 9329,
                                      "end": 9352,
                                      "loc": {
                                        "start": {
                                          "line": 220,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 220,
                                          "column": 54
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 9329,
                                        "end": 9343,
                                        "loc": {
                                          "start": {
                                            "line": 220,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 220,
                                            "column": 45
                                          }
                                        },
                                        "name": "isFaceMaterial"
                                      },
                                      "operator": "===",
                                      "right": {
                                        "type": "Literal",
                                        "start": 9348,
                                        "end": 9352,
                                        "loc": {
                                          "start": {
                                            "line": 220,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 220,
                                            "column": 54
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      }
                                    },
                                    "consequent": {
                                      "type": "MemberExpression",
                                      "start": 9355,
                                      "end": 9386,
                                      "loc": {
                                        "start": {
                                          "line": 220,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 220,
                                          "column": 88
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 9355,
                                        "end": 9364,
                                        "loc": {
                                          "start": {
                                            "line": 220,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 220,
                                            "column": 66
                                          }
                                        },
                                        "name": "materials"
                                      },
                                      "property": {
                                        "type": "MemberExpression",
                                        "start": 9366,
                                        "end": 9384,
                                        "loc": {
                                          "start": {
                                            "line": 220,
                                            "column": 68
                                          },
                                          "end": {
                                            "line": 220,
                                            "column": 86
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 9366,
                                          "end": 9370,
                                          "loc": {
                                            "start": {
                                              "line": 220,
                                              "column": 68
                                            },
                                            "end": {
                                              "line": 220,
                                              "column": 72
                                            }
                                          },
                                          "name": "face"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9371,
                                          "end": 9384,
                                          "loc": {
                                            "start": {
                                              "line": 220,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 220,
                                              "column": 86
                                            }
                                          },
                                          "name": "materialIndex"
                                        },
                                        "computed": false
                                      },
                                      "computed": true
                                    },
                                    "alternate": {
                                      "type": "Identifier",
                                      "start": 9389,
                                      "end": 9397,
                                      "loc": {
                                        "start": {
                                          "line": 220,
                                          "column": 91
                                        },
                                        "end": {
                                          "line": 220,
                                          "column": 99
                                        }
                                      },
                                      "name": "material"
                                    }
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "IfStatement",
                              "start": 9411,
                              "end": 9454,
                              "loc": {
                                "start": {
                                  "line": 221,
                                  "column": 12
                                },
                                "end": {
                                  "line": 221,
                                  "column": 55
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 9416,
                                "end": 9442,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 43
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 9416,
                                  "end": 9428,
                                  "loc": {
                                    "start": {
                                      "line": 221,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 221,
                                      "column": 29
                                    }
                                  },
                                  "name": "faceMaterial"
                                },
                                "operator": "===",
                                "right": {
                                  "type": "Identifier",
                                  "start": 9433,
                                  "end": 9442,
                                  "loc": {
                                    "start": {
                                      "line": 221,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 221,
                                      "column": 43
                                    }
                                  },
                                  "name": "undefined"
                                }
                              },
                              "consequent": {
                                "type": "ContinueStatement",
                                "start": 9445,
                                "end": 9454,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 55
                                  }
                                },
                                "label": null
                              },
                              "alternate": null
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 9467,
                              "end": 9492,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 12
                                },
                                "end": {
                                  "line": 222,
                                  "column": 37
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 9467,
                                "end": 9491,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 36
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "Identifier",
                                  "start": 9467,
                                  "end": 9470,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 15
                                    }
                                  },
                                  "name": "fvA"
                                },
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 9473,
                                  "end": 9491,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9473,
                                    "end": 9481,
                                    "loc": {
                                      "start": {
                                        "line": 222,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 222,
                                        "column": 26
                                      }
                                    },
                                    "name": "vertices"
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 9483,
                                    "end": 9489,
                                    "loc": {
                                      "start": {
                                        "line": 222,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 222,
                                        "column": 34
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9483,
                                      "end": 9487,
                                      "loc": {
                                        "start": {
                                          "line": 222,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 222,
                                          "column": 32
                                        }
                                      },
                                      "name": "face"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9488,
                                      "end": 9489,
                                      "loc": {
                                        "start": {
                                          "line": 222,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 222,
                                          "column": 34
                                        }
                                      },
                                      "name": "a"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 9505,
                              "end": 9530,
                              "loc": {
                                "start": {
                                  "line": 223,
                                  "column": 12
                                },
                                "end": {
                                  "line": 223,
                                  "column": 37
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 9505,
                                "end": 9529,
                                "loc": {
                                  "start": {
                                    "line": 223,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 223,
                                    "column": 36
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "Identifier",
                                  "start": 9505,
                                  "end": 9508,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 15
                                    }
                                  },
                                  "name": "fvB"
                                },
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 9511,
                                  "end": 9529,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9511,
                                    "end": 9519,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 26
                                      }
                                    },
                                    "name": "vertices"
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 9521,
                                    "end": 9527,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 34
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9521,
                                      "end": 9525,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 32
                                        }
                                      },
                                      "name": "face"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9526,
                                      "end": 9527,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 34
                                        }
                                      },
                                      "name": "b"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 9543,
                              "end": 9568,
                              "loc": {
                                "start": {
                                  "line": 224,
                                  "column": 12
                                },
                                "end": {
                                  "line": 224,
                                  "column": 37
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 9543,
                                "end": 9567,
                                "loc": {
                                  "start": {
                                    "line": 224,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 224,
                                    "column": 36
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "Identifier",
                                  "start": 9543,
                                  "end": 9546,
                                  "loc": {
                                    "start": {
                                      "line": 224,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 224,
                                      "column": 15
                                    }
                                  },
                                  "name": "fvC"
                                },
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 9549,
                                  "end": 9567,
                                  "loc": {
                                    "start": {
                                      "line": 224,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 224,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9549,
                                    "end": 9557,
                                    "loc": {
                                      "start": {
                                        "line": 224,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 224,
                                        "column": 26
                                      }
                                    },
                                    "name": "vertices"
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 9559,
                                    "end": 9565,
                                    "loc": {
                                      "start": {
                                        "line": 224,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 224,
                                        "column": 34
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9559,
                                      "end": 9563,
                                      "loc": {
                                        "start": {
                                          "line": 224,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 224,
                                          "column": 32
                                        }
                                      },
                                      "name": "face"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9564,
                                      "end": 9565,
                                      "loc": {
                                        "start": {
                                          "line": 224,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 224,
                                          "column": 34
                                        }
                                      },
                                      "name": "c"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                }
                              }
                            },
                            {
                              "type": "IfStatement",
                              "start": 9581,
                              "end": 10761,
                              "loc": {
                                "start": {
                                  "line": 225,
                                  "column": 12
                                },
                                "end": {
                                  "line": 245,
                                  "column": 13
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 9586,
                                "end": 9620,
                                "loc": {
                                  "start": {
                                    "line": 225,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 225,
                                    "column": 51
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 9586,
                                  "end": 9611,
                                  "loc": {
                                    "start": {
                                      "line": 225,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 225,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9586,
                                    "end": 9598,
                                    "loc": {
                                      "start": {
                                        "line": 225,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 225,
                                        "column": 29
                                      }
                                    },
                                    "name": "faceMaterial"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9599,
                                    "end": 9611,
                                    "loc": {
                                      "start": {
                                        "line": 225,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 225,
                                        "column": 42
                                      }
                                    },
                                    "name": "morphTargets"
                                  },
                                  "computed": false
                                },
                                "operator": "===",
                                "right": {
                                  "type": "Literal",
                                  "start": 9616,
                                  "end": 9620,
                                  "loc": {
                                    "start": {
                                      "line": 225,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 225,
                                      "column": 51
                                    }
                                  },
                                  "value": true,
                                  "rawValue": true,
                                  "raw": "true"
                                }
                              },
                              "consequent": {
                                "type": "BlockStatement",
                                "start": 9623,
                                "end": 10761,
                                "loc": {
                                  "start": {
                                    "line": 225,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 245,
                                    "column": 13
                                  }
                                },
                                "body": [
                                  {
                                    "type": "VariableDeclaration",
                                    "start": 9641,
                                    "end": 9682,
                                    "loc": {
                                      "start": {
                                        "line": 226,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 226,
                                        "column": 57
                                      }
                                    },
                                    "declarations": [
                                      {
                                        "type": "VariableDeclarator",
                                        "start": 9645,
                                        "end": 9681,
                                        "loc": {
                                          "start": {
                                            "line": 226,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 226,
                                            "column": 56
                                          }
                                        },
                                        "id": {
                                          "type": "Identifier",
                                          "start": 9645,
                                          "end": 9657,
                                          "loc": {
                                            "start": {
                                              "line": 226,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 226,
                                              "column": 32
                                            }
                                          },
                                          "name": "morphTargets"
                                        },
                                        "init": {
                                          "type": "MemberExpression",
                                          "start": 9660,
                                          "end": 9681,
                                          "loc": {
                                            "start": {
                                              "line": 226,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 226,
                                              "column": 56
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 9660,
                                            "end": 9668,
                                            "loc": {
                                              "start": {
                                                "line": 226,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 226,
                                                "column": 43
                                              }
                                            },
                                            "name": "geometry"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9669,
                                            "end": 9681,
                                            "loc": {
                                              "start": {
                                                "line": 226,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 226,
                                                "column": 56
                                              }
                                            },
                                            "name": "morphTargets"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ],
                                    "kind": "var"
                                  },
                                  {
                                    "type": "VariableDeclaration",
                                    "start": 9699,
                                    "end": 9748,
                                    "loc": {
                                      "start": {
                                        "line": 227,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 227,
                                        "column": 65
                                      }
                                    },
                                    "declarations": [
                                      {
                                        "type": "VariableDeclarator",
                                        "start": 9703,
                                        "end": 9747,
                                        "loc": {
                                          "start": {
                                            "line": 227,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 227,
                                            "column": 64
                                          }
                                        },
                                        "id": {
                                          "type": "Identifier",
                                          "start": 9703,
                                          "end": 9718,
                                          "loc": {
                                            "start": {
                                              "line": 227,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 227,
                                              "column": 35
                                            }
                                          },
                                          "name": "morphInfluences"
                                        },
                                        "init": {
                                          "type": "MemberExpression",
                                          "start": 9721,
                                          "end": 9747,
                                          "loc": {
                                            "start": {
                                              "line": 227,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 227,
                                              "column": 64
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 9721,
                                            "end": 9725,
                                            "loc": {
                                              "start": {
                                                "line": 227,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 227,
                                                "column": 42
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9726,
                                            "end": 9747,
                                            "loc": {
                                              "start": {
                                                "line": 227,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 227,
                                                "column": 64
                                              }
                                            },
                                            "name": "morphTargetInfluences"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ],
                                    "kind": "var"
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 9765,
                                    "end": 9794,
                                    "loc": {
                                      "start": {
                                        "line": 228,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 228,
                                        "column": 45
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 9765,
                                      "end": 9793,
                                      "loc": {
                                        "start": {
                                          "line": 228,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 228,
                                          "column": 44
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 9765,
                                        "end": 9782,
                                        "loc": {
                                          "start": {
                                            "line": 228,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 228,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 9765,
                                          "end": 9778,
                                          "loc": {
                                            "start": {
                                              "line": 228,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 228,
                                              "column": 29
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 9765,
                                            "end": 9774,
                                            "loc": {
                                              "start": {
                                                "line": 228,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 228,
                                                "column": 25
                                              }
                                            },
                                            "name": "raycaster"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9775,
                                            "end": 9778,
                                            "loc": {
                                              "start": {
                                                "line": 228,
                                                "column": 26
                                              },
                                              "end": {
                                                "line": 228,
                                                "column": 29
                                              }
                                            },
                                            "name": "_vA"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9779,
                                          "end": 9782,
                                          "loc": {
                                            "start": {
                                              "line": 228,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 228,
                                              "column": 33
                                            }
                                          },
                                          "name": "set"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 9784,
                                          "end": 9785,
                                          "loc": {
                                            "start": {
                                              "line": 228,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 228,
                                              "column": 36
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 9787,
                                          "end": 9788,
                                          "loc": {
                                            "start": {
                                              "line": 228,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 228,
                                              "column": 39
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 9790,
                                          "end": 9791,
                                          "loc": {
                                            "start": {
                                              "line": 228,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 228,
                                              "column": 42
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 9811,
                                    "end": 9840,
                                    "loc": {
                                      "start": {
                                        "line": 229,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 229,
                                        "column": 45
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 9811,
                                      "end": 9839,
                                      "loc": {
                                        "start": {
                                          "line": 229,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 229,
                                          "column": 44
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 9811,
                                        "end": 9828,
                                        "loc": {
                                          "start": {
                                            "line": 229,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 229,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 9811,
                                          "end": 9824,
                                          "loc": {
                                            "start": {
                                              "line": 229,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 229,
                                              "column": 29
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 9811,
                                            "end": 9820,
                                            "loc": {
                                              "start": {
                                                "line": 229,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 229,
                                                "column": 25
                                              }
                                            },
                                            "name": "raycaster"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9821,
                                            "end": 9824,
                                            "loc": {
                                              "start": {
                                                "line": 229,
                                                "column": 26
                                              },
                                              "end": {
                                                "line": 229,
                                                "column": 29
                                              }
                                            },
                                            "name": "_vB"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9825,
                                          "end": 9828,
                                          "loc": {
                                            "start": {
                                              "line": 229,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 229,
                                              "column": 33
                                            }
                                          },
                                          "name": "set"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 9830,
                                          "end": 9831,
                                          "loc": {
                                            "start": {
                                              "line": 229,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 229,
                                              "column": 36
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 9833,
                                          "end": 9834,
                                          "loc": {
                                            "start": {
                                              "line": 229,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 229,
                                              "column": 39
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 9836,
                                          "end": 9837,
                                          "loc": {
                                            "start": {
                                              "line": 229,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 229,
                                              "column": 42
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 9857,
                                    "end": 9886,
                                    "loc": {
                                      "start": {
                                        "line": 230,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 230,
                                        "column": 45
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 9857,
                                      "end": 9885,
                                      "loc": {
                                        "start": {
                                          "line": 230,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 230,
                                          "column": 44
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 9857,
                                        "end": 9874,
                                        "loc": {
                                          "start": {
                                            "line": 230,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 230,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 9857,
                                          "end": 9870,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 29
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 9857,
                                            "end": 9866,
                                            "loc": {
                                              "start": {
                                                "line": 230,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 230,
                                                "column": 25
                                              }
                                            },
                                            "name": "raycaster"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9867,
                                            "end": 9870,
                                            "loc": {
                                              "start": {
                                                "line": 230,
                                                "column": 26
                                              },
                                              "end": {
                                                "line": 230,
                                                "column": 29
                                              }
                                            },
                                            "name": "_vC"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9871,
                                          "end": 9874,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 33
                                            }
                                          },
                                          "name": "set"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 9876,
                                          "end": 9877,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 36
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 9879,
                                          "end": 9880,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 39
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 9882,
                                          "end": 9883,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 42
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "ForStatement",
                                    "start": 9903,
                                    "end": 10510,
                                    "loc": {
                                      "start": {
                                        "line": 231,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 238,
                                        "column": 17
                                      }
                                    },
                                    "init": {
                                      "type": "VariableDeclaration",
                                      "start": 9909,
                                      "end": 9944,
                                      "loc": {
                                        "start": {
                                          "line": 231,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 231,
                                          "column": 57
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 9913,
                                          "end": 9918,
                                          "loc": {
                                            "start": {
                                              "line": 231,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 231,
                                              "column": 31
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 9913,
                                            "end": 9914,
                                            "loc": {
                                              "start": {
                                                "line": 231,
                                                "column": 26
                                              },
                                              "end": {
                                                "line": 231,
                                                "column": 27
                                              }
                                            },
                                            "name": "t"
                                          },
                                          "init": {
                                            "type": "Literal",
                                            "start": 9917,
                                            "end": 9918,
                                            "loc": {
                                              "start": {
                                                "line": 231,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 231,
                                                "column": 31
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 9920,
                                          "end": 9944,
                                          "loc": {
                                            "start": {
                                              "line": 231,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 231,
                                              "column": 57
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 9920,
                                            "end": 9922,
                                            "loc": {
                                              "start": {
                                                "line": 231,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 231,
                                                "column": 35
                                              }
                                            },
                                            "name": "tl"
                                          },
                                          "init": {
                                            "type": "MemberExpression",
                                            "start": 9925,
                                            "end": 9944,
                                            "loc": {
                                              "start": {
                                                "line": 231,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 231,
                                                "column": 57
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 9925,
                                              "end": 9937,
                                              "loc": {
                                                "start": {
                                                  "line": 231,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 231,
                                                  "column": 50
                                                }
                                              },
                                              "name": "morphTargets"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 9938,
                                              "end": 9944,
                                              "loc": {
                                                "start": {
                                                  "line": 231,
                                                  "column": 51
                                                },
                                                "end": {
                                                  "line": 231,
                                                  "column": 57
                                                }
                                              },
                                              "name": "length"
                                            },
                                            "computed": false
                                          }
                                        }
                                      ],
                                      "kind": "var"
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 9946,
                                      "end": 9952,
                                      "loc": {
                                        "start": {
                                          "line": 231,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 231,
                                          "column": 65
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 9946,
                                        "end": 9947,
                                        "loc": {
                                          "start": {
                                            "line": 231,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 231,
                                            "column": 60
                                          }
                                        },
                                        "name": "t"
                                      },
                                      "operator": "<",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 9950,
                                        "end": 9952,
                                        "loc": {
                                          "start": {
                                            "line": 231,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 231,
                                            "column": 65
                                          }
                                        },
                                        "name": "tl"
                                      }
                                    },
                                    "update": {
                                      "type": "UpdateExpression",
                                      "start": 9954,
                                      "end": 9958,
                                      "loc": {
                                        "start": {
                                          "line": 231,
                                          "column": 67
                                        },
                                        "end": {
                                          "line": 231,
                                          "column": 71
                                        }
                                      },
                                      "operator": "++",
                                      "prefix": false,
                                      "argument": {
                                        "type": "Identifier",
                                        "start": 9954,
                                        "end": 9955,
                                        "loc": {
                                          "start": {
                                            "line": 231,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 231,
                                            "column": 68
                                          }
                                        },
                                        "name": "t"
                                      }
                                    },
                                    "body": {
                                      "type": "BlockStatement",
                                      "start": 9961,
                                      "end": 10510,
                                      "loc": {
                                        "start": {
                                          "line": 231,
                                          "column": 74
                                        },
                                        "end": {
                                          "line": 238,
                                          "column": 17
                                        }
                                      },
                                      "body": [
                                        {
                                          "type": "VariableDeclaration",
                                          "start": 9983,
                                          "end": 10020,
                                          "loc": {
                                            "start": {
                                              "line": 232,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 232,
                                              "column": 57
                                            }
                                          },
                                          "declarations": [
                                            {
                                              "type": "VariableDeclarator",
                                              "start": 9987,
                                              "end": 10019,
                                              "loc": {
                                                "start": {
                                                  "line": 232,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 232,
                                                  "column": 56
                                                }
                                              },
                                              "id": {
                                                "type": "Identifier",
                                                "start": 9987,
                                                "end": 9996,
                                                "loc": {
                                                  "start": {
                                                    "line": 232,
                                                    "column": 24
                                                  },
                                                  "end": {
                                                    "line": 232,
                                                    "column": 33
                                                  }
                                                },
                                                "name": "influence"
                                              },
                                              "init": {
                                                "type": "MemberExpression",
                                                "start": 9999,
                                                "end": 10019,
                                                "loc": {
                                                  "start": {
                                                    "line": 232,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 232,
                                                    "column": 56
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 9999,
                                                  "end": 10014,
                                                  "loc": {
                                                    "start": {
                                                      "line": 232,
                                                      "column": 36
                                                    },
                                                    "end": {
                                                      "line": 232,
                                                      "column": 51
                                                    }
                                                  },
                                                  "name": "morphInfluences"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 10016,
                                                  "end": 10017,
                                                  "loc": {
                                                    "start": {
                                                      "line": 232,
                                                      "column": 53
                                                    },
                                                    "end": {
                                                      "line": 232,
                                                      "column": 54
                                                    }
                                                  },
                                                  "name": "t"
                                                },
                                                "computed": true
                                              }
                                            }
                                          ],
                                          "kind": "var"
                                        },
                                        {
                                          "type": "IfStatement",
                                          "start": 10041,
                                          "end": 10073,
                                          "loc": {
                                            "start": {
                                              "line": 233,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 233,
                                              "column": 52
                                            }
                                          },
                                          "test": {
                                            "type": "BinaryExpression",
                                            "start": 10046,
                                            "end": 10061,
                                            "loc": {
                                              "start": {
                                                "line": 233,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 233,
                                                "column": 40
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 10046,
                                              "end": 10055,
                                              "loc": {
                                                "start": {
                                                  "line": 233,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 233,
                                                  "column": 34
                                                }
                                              },
                                              "name": "influence"
                                            },
                                            "operator": "===",
                                            "right": {
                                              "type": "Literal",
                                              "start": 10060,
                                              "end": 10061,
                                              "loc": {
                                                "start": {
                                                  "line": 233,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 233,
                                                  "column": 40
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          },
                                          "consequent": {
                                            "type": "ContinueStatement",
                                            "start": 10064,
                                            "end": 10073,
                                            "loc": {
                                              "start": {
                                                "line": 233,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 233,
                                                "column": 52
                                              }
                                            },
                                            "label": null
                                          },
                                          "alternate": null
                                        },
                                        {
                                          "type": "VariableDeclaration",
                                          "start": 10094,
                                          "end": 10135,
                                          "loc": {
                                            "start": {
                                              "line": 234,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 234,
                                              "column": 61
                                            }
                                          },
                                          "declarations": [
                                            {
                                              "type": "VariableDeclarator",
                                              "start": 10098,
                                              "end": 10134,
                                              "loc": {
                                                "start": {
                                                  "line": 234,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 234,
                                                  "column": 60
                                                }
                                              },
                                              "id": {
                                                "type": "Identifier",
                                                "start": 10098,
                                                "end": 10105,
                                                "loc": {
                                                  "start": {
                                                    "line": 234,
                                                    "column": 24
                                                  },
                                                  "end": {
                                                    "line": 234,
                                                    "column": 31
                                                  }
                                                },
                                                "name": "targets"
                                              },
                                              "init": {
                                                "type": "MemberExpression",
                                                "start": 10108,
                                                "end": 10134,
                                                "loc": {
                                                  "start": {
                                                    "line": 234,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 234,
                                                    "column": 60
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 10108,
                                                  "end": 10125,
                                                  "loc": {
                                                    "start": {
                                                      "line": 234,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 234,
                                                      "column": 51
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 10108,
                                                    "end": 10120,
                                                    "loc": {
                                                      "start": {
                                                        "line": 234,
                                                        "column": 34
                                                      },
                                                      "end": {
                                                        "line": 234,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "morphTargets"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 10122,
                                                    "end": 10123,
                                                    "loc": {
                                                      "start": {
                                                        "line": 234,
                                                        "column": 48
                                                      },
                                                      "end": {
                                                        "line": 234,
                                                        "column": 49
                                                      }
                                                    },
                                                    "name": "t"
                                                  },
                                                  "computed": true
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 10126,
                                                  "end": 10134,
                                                  "loc": {
                                                    "start": {
                                                      "line": 234,
                                                      "column": 52
                                                    },
                                                    "end": {
                                                      "line": 234,
                                                      "column": 60
                                                    }
                                                  },
                                                  "name": "vertices"
                                                },
                                                "computed": false
                                              }
                                            }
                                          ],
                                          "kind": "var"
                                        },
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 10156,
                                          "end": 10254,
                                          "loc": {
                                            "start": {
                                              "line": 235,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 235,
                                              "column": 118
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 10156,
                                            "end": 10253,
                                            "loc": {
                                              "start": {
                                                "line": 235,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 235,
                                                "column": 117
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 10156,
                                              "end": 10185,
                                              "loc": {
                                                "start": {
                                                  "line": 235,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 235,
                                                  "column": 49
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 10156,
                                                "end": 10169,
                                                "loc": {
                                                  "start": {
                                                    "line": 235,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 235,
                                                    "column": 33
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 10156,
                                                  "end": 10165,
                                                  "loc": {
                                                    "start": {
                                                      "line": 235,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 235,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "raycaster"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 10166,
                                                  "end": 10169,
                                                  "loc": {
                                                    "start": {
                                                      "line": 235,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 235,
                                                      "column": 33
                                                    }
                                                  },
                                                  "name": "_vA"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 10170,
                                                "end": 10185,
                                                "loc": {
                                                  "start": {
                                                    "line": 235,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 235,
                                                    "column": 49
                                                  }
                                                },
                                                "name": "addScaledVector"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "CallExpression",
                                                "start": 10187,
                                                "end": 10240,
                                                "loc": {
                                                  "start": {
                                                    "line": 235,
                                                    "column": 51
                                                  },
                                                  "end": {
                                                    "line": 235,
                                                    "column": 104
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 10187,
                                                  "end": 10214,
                                                  "loc": {
                                                    "start": {
                                                      "line": 235,
                                                      "column": 51
                                                    },
                                                    "end": {
                                                      "line": 235,
                                                      "column": 78
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 10187,
                                                    "end": 10203,
                                                    "loc": {
                                                      "start": {
                                                        "line": 235,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 235,
                                                        "column": 67
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 10187,
                                                      "end": 10196,
                                                      "loc": {
                                                        "start": {
                                                          "line": 235,
                                                          "column": 51
                                                        },
                                                        "end": {
                                                          "line": 235,
                                                          "column": 60
                                                        }
                                                      },
                                                      "name": "raycaster"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 10197,
                                                      "end": 10203,
                                                      "loc": {
                                                        "start": {
                                                          "line": 235,
                                                          "column": 61
                                                        },
                                                        "end": {
                                                          "line": 235,
                                                          "column": 67
                                                        }
                                                      },
                                                      "name": "_tempA"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 10204,
                                                    "end": 10214,
                                                    "loc": {
                                                      "start": {
                                                        "line": 235,
                                                        "column": 68
                                                      },
                                                      "end": {
                                                        "line": 235,
                                                        "column": 78
                                                      }
                                                    },
                                                    "name": "subVectors"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "MemberExpression",
                                                    "start": 10216,
                                                    "end": 10233,
                                                    "loc": {
                                                      "start": {
                                                        "line": 235,
                                                        "column": 80
                                                      },
                                                      "end": {
                                                        "line": 235,
                                                        "column": 97
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 10216,
                                                      "end": 10223,
                                                      "loc": {
                                                        "start": {
                                                          "line": 235,
                                                          "column": 80
                                                        },
                                                        "end": {
                                                          "line": 235,
                                                          "column": 87
                                                        }
                                                      },
                                                      "name": "targets"
                                                    },
                                                    "property": {
                                                      "type": "MemberExpression",
                                                      "start": 10225,
                                                      "end": 10231,
                                                      "loc": {
                                                        "start": {
                                                          "line": 235,
                                                          "column": 89
                                                        },
                                                        "end": {
                                                          "line": 235,
                                                          "column": 95
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 10225,
                                                        "end": 10229,
                                                        "loc": {
                                                          "start": {
                                                            "line": 235,
                                                            "column": 89
                                                          },
                                                          "end": {
                                                            "line": 235,
                                                            "column": 93
                                                          }
                                                        },
                                                        "name": "face"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 10230,
                                                        "end": 10231,
                                                        "loc": {
                                                          "start": {
                                                            "line": 235,
                                                            "column": 94
                                                          },
                                                          "end": {
                                                            "line": 235,
                                                            "column": 95
                                                          }
                                                        },
                                                        "name": "a"
                                                      },
                                                      "computed": false
                                                    },
                                                    "computed": true
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 10235,
                                                    "end": 10238,
                                                    "loc": {
                                                      "start": {
                                                        "line": 235,
                                                        "column": 99
                                                      },
                                                      "end": {
                                                        "line": 235,
                                                        "column": 102
                                                      }
                                                    },
                                                    "name": "fvA"
                                                  }
                                                ]
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 10242,
                                                "end": 10251,
                                                "loc": {
                                                  "start": {
                                                    "line": 235,
                                                    "column": 106
                                                  },
                                                  "end": {
                                                    "line": 235,
                                                    "column": 115
                                                  }
                                                },
                                                "name": "influence"
                                              }
                                            ]
                                          }
                                        },
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 10275,
                                          "end": 10373,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 118
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 10275,
                                            "end": 10372,
                                            "loc": {
                                              "start": {
                                                "line": 236,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 236,
                                                "column": 117
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 10275,
                                              "end": 10304,
                                              "loc": {
                                                "start": {
                                                  "line": 236,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 236,
                                                  "column": 49
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 10275,
                                                "end": 10288,
                                                "loc": {
                                                  "start": {
                                                    "line": 236,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 236,
                                                    "column": 33
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 10275,
                                                  "end": 10284,
                                                  "loc": {
                                                    "start": {
                                                      "line": 236,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 236,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "raycaster"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 10285,
                                                  "end": 10288,
                                                  "loc": {
                                                    "start": {
                                                      "line": 236,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 236,
                                                      "column": 33
                                                    }
                                                  },
                                                  "name": "_vB"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 10289,
                                                "end": 10304,
                                                "loc": {
                                                  "start": {
                                                    "line": 236,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 236,
                                                    "column": 49
                                                  }
                                                },
                                                "name": "addScaledVector"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "CallExpression",
                                                "start": 10306,
                                                "end": 10359,
                                                "loc": {
                                                  "start": {
                                                    "line": 236,
                                                    "column": 51
                                                  },
                                                  "end": {
                                                    "line": 236,
                                                    "column": 104
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 10306,
                                                  "end": 10333,
                                                  "loc": {
                                                    "start": {
                                                      "line": 236,
                                                      "column": 51
                                                    },
                                                    "end": {
                                                      "line": 236,
                                                      "column": 78
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 10306,
                                                    "end": 10322,
                                                    "loc": {
                                                      "start": {
                                                        "line": 236,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 236,
                                                        "column": 67
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 10306,
                                                      "end": 10315,
                                                      "loc": {
                                                        "start": {
                                                          "line": 236,
                                                          "column": 51
                                                        },
                                                        "end": {
                                                          "line": 236,
                                                          "column": 60
                                                        }
                                                      },
                                                      "name": "raycaster"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 10316,
                                                      "end": 10322,
                                                      "loc": {
                                                        "start": {
                                                          "line": 236,
                                                          "column": 61
                                                        },
                                                        "end": {
                                                          "line": 236,
                                                          "column": 67
                                                        }
                                                      },
                                                      "name": "_tempB"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 10323,
                                                    "end": 10333,
                                                    "loc": {
                                                      "start": {
                                                        "line": 236,
                                                        "column": 68
                                                      },
                                                      "end": {
                                                        "line": 236,
                                                        "column": 78
                                                      }
                                                    },
                                                    "name": "subVectors"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "MemberExpression",
                                                    "start": 10335,
                                                    "end": 10352,
                                                    "loc": {
                                                      "start": {
                                                        "line": 236,
                                                        "column": 80
                                                      },
                                                      "end": {
                                                        "line": 236,
                                                        "column": 97
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 10335,
                                                      "end": 10342,
                                                      "loc": {
                                                        "start": {
                                                          "line": 236,
                                                          "column": 80
                                                        },
                                                        "end": {
                                                          "line": 236,
                                                          "column": 87
                                                        }
                                                      },
                                                      "name": "targets"
                                                    },
                                                    "property": {
                                                      "type": "MemberExpression",
                                                      "start": 10344,
                                                      "end": 10350,
                                                      "loc": {
                                                        "start": {
                                                          "line": 236,
                                                          "column": 89
                                                        },
                                                        "end": {
                                                          "line": 236,
                                                          "column": 95
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 10344,
                                                        "end": 10348,
                                                        "loc": {
                                                          "start": {
                                                            "line": 236,
                                                            "column": 89
                                                          },
                                                          "end": {
                                                            "line": 236,
                                                            "column": 93
                                                          }
                                                        },
                                                        "name": "face"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 10349,
                                                        "end": 10350,
                                                        "loc": {
                                                          "start": {
                                                            "line": 236,
                                                            "column": 94
                                                          },
                                                          "end": {
                                                            "line": 236,
                                                            "column": 95
                                                          }
                                                        },
                                                        "name": "b"
                                                      },
                                                      "computed": false
                                                    },
                                                    "computed": true
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 10354,
                                                    "end": 10357,
                                                    "loc": {
                                                      "start": {
                                                        "line": 236,
                                                        "column": 99
                                                      },
                                                      "end": {
                                                        "line": 236,
                                                        "column": 102
                                                      }
                                                    },
                                                    "name": "fvB"
                                                  }
                                                ]
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 10361,
                                                "end": 10370,
                                                "loc": {
                                                  "start": {
                                                    "line": 236,
                                                    "column": 106
                                                  },
                                                  "end": {
                                                    "line": 236,
                                                    "column": 115
                                                  }
                                                },
                                                "name": "influence"
                                              }
                                            ]
                                          }
                                        },
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 10394,
                                          "end": 10492,
                                          "loc": {
                                            "start": {
                                              "line": 237,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 237,
                                              "column": 118
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 10394,
                                            "end": 10491,
                                            "loc": {
                                              "start": {
                                                "line": 237,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 237,
                                                "column": 117
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 10394,
                                              "end": 10423,
                                              "loc": {
                                                "start": {
                                                  "line": 237,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 237,
                                                  "column": 49
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 10394,
                                                "end": 10407,
                                                "loc": {
                                                  "start": {
                                                    "line": 237,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 237,
                                                    "column": 33
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 10394,
                                                  "end": 10403,
                                                  "loc": {
                                                    "start": {
                                                      "line": 237,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 237,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "raycaster"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 10404,
                                                  "end": 10407,
                                                  "loc": {
                                                    "start": {
                                                      "line": 237,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 237,
                                                      "column": 33
                                                    }
                                                  },
                                                  "name": "_vC"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 10408,
                                                "end": 10423,
                                                "loc": {
                                                  "start": {
                                                    "line": 237,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 237,
                                                    "column": 49
                                                  }
                                                },
                                                "name": "addScaledVector"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "CallExpression",
                                                "start": 10425,
                                                "end": 10478,
                                                "loc": {
                                                  "start": {
                                                    "line": 237,
                                                    "column": 51
                                                  },
                                                  "end": {
                                                    "line": 237,
                                                    "column": 104
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 10425,
                                                  "end": 10452,
                                                  "loc": {
                                                    "start": {
                                                      "line": 237,
                                                      "column": 51
                                                    },
                                                    "end": {
                                                      "line": 237,
                                                      "column": 78
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 10425,
                                                    "end": 10441,
                                                    "loc": {
                                                      "start": {
                                                        "line": 237,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 237,
                                                        "column": 67
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 10425,
                                                      "end": 10434,
                                                      "loc": {
                                                        "start": {
                                                          "line": 237,
                                                          "column": 51
                                                        },
                                                        "end": {
                                                          "line": 237,
                                                          "column": 60
                                                        }
                                                      },
                                                      "name": "raycaster"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 10435,
                                                      "end": 10441,
                                                      "loc": {
                                                        "start": {
                                                          "line": 237,
                                                          "column": 61
                                                        },
                                                        "end": {
                                                          "line": 237,
                                                          "column": 67
                                                        }
                                                      },
                                                      "name": "_tempC"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 10442,
                                                    "end": 10452,
                                                    "loc": {
                                                      "start": {
                                                        "line": 237,
                                                        "column": 68
                                                      },
                                                      "end": {
                                                        "line": 237,
                                                        "column": 78
                                                      }
                                                    },
                                                    "name": "subVectors"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "MemberExpression",
                                                    "start": 10454,
                                                    "end": 10471,
                                                    "loc": {
                                                      "start": {
                                                        "line": 237,
                                                        "column": 80
                                                      },
                                                      "end": {
                                                        "line": 237,
                                                        "column": 97
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 10454,
                                                      "end": 10461,
                                                      "loc": {
                                                        "start": {
                                                          "line": 237,
                                                          "column": 80
                                                        },
                                                        "end": {
                                                          "line": 237,
                                                          "column": 87
                                                        }
                                                      },
                                                      "name": "targets"
                                                    },
                                                    "property": {
                                                      "type": "MemberExpression",
                                                      "start": 10463,
                                                      "end": 10469,
                                                      "loc": {
                                                        "start": {
                                                          "line": 237,
                                                          "column": 89
                                                        },
                                                        "end": {
                                                          "line": 237,
                                                          "column": 95
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 10463,
                                                        "end": 10467,
                                                        "loc": {
                                                          "start": {
                                                            "line": 237,
                                                            "column": 89
                                                          },
                                                          "end": {
                                                            "line": 237,
                                                            "column": 93
                                                          }
                                                        },
                                                        "name": "face"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 10468,
                                                        "end": 10469,
                                                        "loc": {
                                                          "start": {
                                                            "line": 237,
                                                            "column": 94
                                                          },
                                                          "end": {
                                                            "line": 237,
                                                            "column": 95
                                                          }
                                                        },
                                                        "name": "c"
                                                      },
                                                      "computed": false
                                                    },
                                                    "computed": true
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 10473,
                                                    "end": 10476,
                                                    "loc": {
                                                      "start": {
                                                        "line": 237,
                                                        "column": 99
                                                      },
                                                      "end": {
                                                        "line": 237,
                                                        "column": 102
                                                      }
                                                    },
                                                    "name": "fvC"
                                                  }
                                                ]
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 10480,
                                                "end": 10489,
                                                "loc": {
                                                  "start": {
                                                    "line": 237,
                                                    "column": 106
                                                  },
                                                  "end": {
                                                    "line": 237,
                                                    "column": 115
                                                  }
                                                },
                                                "name": "influence"
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 10527,
                                    "end": 10552,
                                    "loc": {
                                      "start": {
                                        "line": 239,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 239,
                                        "column": 41
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 10527,
                                      "end": 10551,
                                      "loc": {
                                        "start": {
                                          "line": 239,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 239,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 10527,
                                        "end": 10544,
                                        "loc": {
                                          "start": {
                                            "line": 239,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 239,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 10527,
                                          "end": 10540,
                                          "loc": {
                                            "start": {
                                              "line": 239,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 239,
                                              "column": 29
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 10527,
                                            "end": 10536,
                                            "loc": {
                                              "start": {
                                                "line": 239,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 239,
                                                "column": 25
                                              }
                                            },
                                            "name": "raycaster"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 10537,
                                            "end": 10540,
                                            "loc": {
                                              "start": {
                                                "line": 239,
                                                "column": 26
                                              },
                                              "end": {
                                                "line": 239,
                                                "column": 29
                                              }
                                            },
                                            "name": "_vA"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10541,
                                          "end": 10544,
                                          "loc": {
                                            "start": {
                                              "line": 239,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 239,
                                              "column": 33
                                            }
                                          },
                                          "name": "add"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 10546,
                                          "end": 10549,
                                          "loc": {
                                            "start": {
                                              "line": 239,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 239,
                                              "column": 38
                                            }
                                          },
                                          "name": "fvA"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 10569,
                                    "end": 10594,
                                    "loc": {
                                      "start": {
                                        "line": 240,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 240,
                                        "column": 41
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 10569,
                                      "end": 10593,
                                      "loc": {
                                        "start": {
                                          "line": 240,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 240,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 10569,
                                        "end": 10586,
                                        "loc": {
                                          "start": {
                                            "line": 240,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 240,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 10569,
                                          "end": 10582,
                                          "loc": {
                                            "start": {
                                              "line": 240,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 240,
                                              "column": 29
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 10569,
                                            "end": 10578,
                                            "loc": {
                                              "start": {
                                                "line": 240,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 240,
                                                "column": 25
                                              }
                                            },
                                            "name": "raycaster"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 10579,
                                            "end": 10582,
                                            "loc": {
                                              "start": {
                                                "line": 240,
                                                "column": 26
                                              },
                                              "end": {
                                                "line": 240,
                                                "column": 29
                                              }
                                            },
                                            "name": "_vB"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10583,
                                          "end": 10586,
                                          "loc": {
                                            "start": {
                                              "line": 240,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 240,
                                              "column": 33
                                            }
                                          },
                                          "name": "add"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 10588,
                                          "end": 10591,
                                          "loc": {
                                            "start": {
                                              "line": 240,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 240,
                                              "column": 38
                                            }
                                          },
                                          "name": "fvB"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 10611,
                                    "end": 10636,
                                    "loc": {
                                      "start": {
                                        "line": 241,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 241,
                                        "column": 41
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 10611,
                                      "end": 10635,
                                      "loc": {
                                        "start": {
                                          "line": 241,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 241,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 10611,
                                        "end": 10628,
                                        "loc": {
                                          "start": {
                                            "line": 241,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 241,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 10611,
                                          "end": 10624,
                                          "loc": {
                                            "start": {
                                              "line": 241,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 241,
                                              "column": 29
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 10611,
                                            "end": 10620,
                                            "loc": {
                                              "start": {
                                                "line": 241,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 241,
                                                "column": 25
                                              }
                                            },
                                            "name": "raycaster"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 10621,
                                            "end": 10624,
                                            "loc": {
                                              "start": {
                                                "line": 241,
                                                "column": 26
                                              },
                                              "end": {
                                                "line": 241,
                                                "column": 29
                                              }
                                            },
                                            "name": "_vC"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10625,
                                          "end": 10628,
                                          "loc": {
                                            "start": {
                                              "line": 241,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 241,
                                              "column": 33
                                            }
                                          },
                                          "name": "add"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 10630,
                                          "end": 10633,
                                          "loc": {
                                            "start": {
                                              "line": 241,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 241,
                                              "column": 38
                                            }
                                          },
                                          "name": "fvC"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 10653,
                                    "end": 10673,
                                    "loc": {
                                      "start": {
                                        "line": 242,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 242,
                                        "column": 36
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 10653,
                                      "end": 10672,
                                      "loc": {
                                        "start": {
                                          "line": 242,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 242,
                                          "column": 35
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 10653,
                                        "end": 10656,
                                        "loc": {
                                          "start": {
                                            "line": 242,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 242,
                                            "column": 19
                                          }
                                        },
                                        "name": "fvA"
                                      },
                                      "right": {
                                        "type": "MemberExpression",
                                        "start": 10659,
                                        "end": 10672,
                                        "loc": {
                                          "start": {
                                            "line": 242,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 242,
                                            "column": 35
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 10659,
                                          "end": 10668,
                                          "loc": {
                                            "start": {
                                              "line": 242,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 242,
                                              "column": 31
                                            }
                                          },
                                          "name": "raycaster"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10669,
                                          "end": 10672,
                                          "loc": {
                                            "start": {
                                              "line": 242,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 242,
                                              "column": 35
                                            }
                                          },
                                          "name": "_vA"
                                        },
                                        "computed": false
                                      }
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 10690,
                                    "end": 10710,
                                    "loc": {
                                      "start": {
                                        "line": 243,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 243,
                                        "column": 36
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 10690,
                                      "end": 10709,
                                      "loc": {
                                        "start": {
                                          "line": 243,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 243,
                                          "column": 35
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 10690,
                                        "end": 10693,
                                        "loc": {
                                          "start": {
                                            "line": 243,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 243,
                                            "column": 19
                                          }
                                        },
                                        "name": "fvB"
                                      },
                                      "right": {
                                        "type": "MemberExpression",
                                        "start": 10696,
                                        "end": 10709,
                                        "loc": {
                                          "start": {
                                            "line": 243,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 243,
                                            "column": 35
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 10696,
                                          "end": 10705,
                                          "loc": {
                                            "start": {
                                              "line": 243,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 243,
                                              "column": 31
                                            }
                                          },
                                          "name": "raycaster"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10706,
                                          "end": 10709,
                                          "loc": {
                                            "start": {
                                              "line": 243,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 243,
                                              "column": 35
                                            }
                                          },
                                          "name": "_vB"
                                        },
                                        "computed": false
                                      }
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 10727,
                                    "end": 10747,
                                    "loc": {
                                      "start": {
                                        "line": 244,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 244,
                                        "column": 36
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 10727,
                                      "end": 10746,
                                      "loc": {
                                        "start": {
                                          "line": 244,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 244,
                                          "column": 35
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 10727,
                                        "end": 10730,
                                        "loc": {
                                          "start": {
                                            "line": 244,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 244,
                                            "column": 19
                                          }
                                        },
                                        "name": "fvC"
                                      },
                                      "right": {
                                        "type": "MemberExpression",
                                        "start": 10733,
                                        "end": 10746,
                                        "loc": {
                                          "start": {
                                            "line": 244,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 244,
                                            "column": 35
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 10733,
                                          "end": 10742,
                                          "loc": {
                                            "start": {
                                              "line": 244,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 244,
                                              "column": 31
                                            }
                                          },
                                          "name": "raycaster"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10743,
                                          "end": 10746,
                                          "loc": {
                                            "start": {
                                              "line": 244,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 244,
                                              "column": 35
                                            }
                                          },
                                          "name": "_vC"
                                        },
                                        "computed": false
                                      }
                                    }
                                  }
                                ]
                              },
                              "alternate": null
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 10774,
                              "end": 10887,
                              "loc": {
                                "start": {
                                  "line": 246,
                                  "column": 12
                                },
                                "end": {
                                  "line": 246,
                                  "column": 125
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 10774,
                                "end": 10886,
                                "loc": {
                                  "start": {
                                    "line": 246,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 246,
                                    "column": 124
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "Identifier",
                                  "start": 10774,
                                  "end": 10786,
                                  "loc": {
                                    "start": {
                                      "line": 246,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 246,
                                      "column": 24
                                    }
                                  },
                                  "name": "intersection"
                                },
                                "right": {
                                  "type": "CallExpression",
                                  "start": 10789,
                                  "end": 10886,
                                  "loc": {
                                    "start": {
                                      "line": 246,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 246,
                                      "column": 124
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 10789,
                                    "end": 10806,
                                    "loc": {
                                      "start": {
                                        "line": 246,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 246,
                                        "column": 44
                                      }
                                    },
                                    "name": "checkIntersection"
                                  },
                                  "arguments": [
                                    {
                                      "type": "ThisExpression",
                                      "start": 10808,
                                      "end": 10812,
                                      "loc": {
                                        "start": {
                                          "line": 246,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 246,
                                          "column": 50
                                        }
                                      }
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 10814,
                                      "end": 10823,
                                      "loc": {
                                        "start": {
                                          "line": 246,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 246,
                                          "column": 61
                                        }
                                      },
                                      "name": "raycaster"
                                    },
                                    {
                                      "type": "MemberExpression",
                                      "start": 10825,
                                      "end": 10839,
                                      "loc": {
                                        "start": {
                                          "line": 246,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 246,
                                          "column": 77
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 10825,
                                        "end": 10834,
                                        "loc": {
                                          "start": {
                                            "line": 246,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 246,
                                            "column": 72
                                          }
                                        },
                                        "name": "raycaster"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10835,
                                        "end": 10839,
                                        "loc": {
                                          "start": {
                                            "line": 246,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 246,
                                            "column": 77
                                          }
                                        },
                                        "name": "_ray"
                                      },
                                      "computed": false
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 10841,
                                      "end": 10844,
                                      "loc": {
                                        "start": {
                                          "line": 246,
                                          "column": 79
                                        },
                                        "end": {
                                          "line": 246,
                                          "column": 82
                                        }
                                      },
                                      "name": "fvA"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 10846,
                                      "end": 10849,
                                      "loc": {
                                        "start": {
                                          "line": 246,
                                          "column": 84
                                        },
                                        "end": {
                                          "line": 246,
                                          "column": 87
                                        }
                                      },
                                      "name": "fvB"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 10851,
                                      "end": 10854,
                                      "loc": {
                                        "start": {
                                          "line": 246,
                                          "column": 89
                                        },
                                        "end": {
                                          "line": 246,
                                          "column": 92
                                        }
                                      },
                                      "name": "fvC"
                                    },
                                    {
                                      "type": "MemberExpression",
                                      "start": 10856,
                                      "end": 10884,
                                      "loc": {
                                        "start": {
                                          "line": 246,
                                          "column": 94
                                        },
                                        "end": {
                                          "line": 246,
                                          "column": 122
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 10856,
                                        "end": 10865,
                                        "loc": {
                                          "start": {
                                            "line": 246,
                                            "column": 94
                                          },
                                          "end": {
                                            "line": 246,
                                            "column": 103
                                          }
                                        },
                                        "name": "raycaster"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10866,
                                        "end": 10884,
                                        "loc": {
                                          "start": {
                                            "line": 246,
                                            "column": 104
                                          },
                                          "end": {
                                            "line": 246,
                                            "column": 122
                                          }
                                        },
                                        "name": "_intersectionPoint"
                                      },
                                      "computed": false
                                    }
                                  ]
                                }
                              }
                            },
                            {
                              "type": "IfStatement",
                              "start": 10900,
                              "end": 11571,
                              "loc": {
                                "start": {
                                  "line": 247,
                                  "column": 12
                                },
                                "end": {
                                  "line": 260,
                                  "column": 13
                                }
                              },
                              "test": {
                                "type": "Identifier",
                                "start": 10905,
                                "end": 10917,
                                "loc": {
                                  "start": {
                                    "line": 247,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 247,
                                    "column": 29
                                  }
                                },
                                "name": "intersection"
                              },
                              "consequent": {
                                "type": "BlockStatement",
                                "start": 10920,
                                "end": 11571,
                                "loc": {
                                  "start": {
                                    "line": 247,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 260,
                                    "column": 13
                                  }
                                },
                                "body": [
                                  {
                                    "type": "IfStatement",
                                    "start": 10938,
                                    "end": 11335,
                                    "loc": {
                                      "start": {
                                        "line": 248,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 254,
                                        "column": 17
                                      }
                                    },
                                    "test": {
                                      "type": "Identifier",
                                      "start": 10943,
                                      "end": 10946,
                                      "loc": {
                                        "start": {
                                          "line": 248,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 248,
                                          "column": 24
                                        }
                                      },
                                      "name": "uvs"
                                    },
                                    "consequent": {
                                      "type": "BlockStatement",
                                      "start": 10949,
                                      "end": 11335,
                                      "loc": {
                                        "start": {
                                          "line": 248,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 254,
                                          "column": 17
                                        }
                                      },
                                      "body": [
                                        {
                                          "type": "VariableDeclaration",
                                          "start": 10971,
                                          "end": 10992,
                                          "loc": {
                                            "start": {
                                              "line": 249,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 249,
                                              "column": 41
                                            }
                                          },
                                          "declarations": [
                                            {
                                              "type": "VariableDeclarator",
                                              "start": 10975,
                                              "end": 10991,
                                              "loc": {
                                                "start": {
                                                  "line": 249,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 249,
                                                  "column": 40
                                                }
                                              },
                                              "id": {
                                                "type": "Identifier",
                                                "start": 10975,
                                                "end": 10980,
                                                "loc": {
                                                  "start": {
                                                    "line": 249,
                                                    "column": 24
                                                  },
                                                  "end": {
                                                    "line": 249,
                                                    "column": 29
                                                  }
                                                },
                                                "name": "uvs_f"
                                              },
                                              "init": {
                                                "type": "MemberExpression",
                                                "start": 10983,
                                                "end": 10991,
                                                "loc": {
                                                  "start": {
                                                    "line": 249,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 249,
                                                    "column": 40
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 10983,
                                                  "end": 10986,
                                                  "loc": {
                                                    "start": {
                                                      "line": 249,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 249,
                                                      "column": 35
                                                    }
                                                  },
                                                  "name": "uvs"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 10988,
                                                  "end": 10989,
                                                  "loc": {
                                                    "start": {
                                                      "line": 249,
                                                      "column": 37
                                                    },
                                                    "end": {
                                                      "line": 249,
                                                      "column": 38
                                                    }
                                                  },
                                                  "name": "f"
                                                },
                                                "computed": true
                                              }
                                            }
                                          ],
                                          "kind": "var"
                                        },
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 11013,
                                          "end": 11047,
                                          "loc": {
                                            "start": {
                                              "line": 250,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 250,
                                              "column": 54
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 11013,
                                            "end": 11046,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 53
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 11013,
                                              "end": 11032,
                                              "loc": {
                                                "start": {
                                                  "line": 250,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 250,
                                                  "column": 39
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 11013,
                                                "end": 11027,
                                                "loc": {
                                                  "start": {
                                                    "line": 250,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 250,
                                                    "column": 34
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 11013,
                                                  "end": 11022,
                                                  "loc": {
                                                    "start": {
                                                      "line": 250,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 250,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "raycaster"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 11023,
                                                  "end": 11027,
                                                  "loc": {
                                                    "start": {
                                                      "line": 250,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 250,
                                                      "column": 34
                                                    }
                                                  },
                                                  "name": "_uvA"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 11028,
                                                "end": 11032,
                                                "loc": {
                                                  "start": {
                                                    "line": 250,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 250,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "copy"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 11034,
                                                "end": 11044,
                                                "loc": {
                                                  "start": {
                                                    "line": 250,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 250,
                                                    "column": 51
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 11034,
                                                  "end": 11039,
                                                  "loc": {
                                                    "start": {
                                                      "line": 250,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 250,
                                                      "column": 46
                                                    }
                                                  },
                                                  "name": "uvs_f"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 11041,
                                                  "end": 11042,
                                                  "loc": {
                                                    "start": {
                                                      "line": 250,
                                                      "column": 48
                                                    },
                                                    "end": {
                                                      "line": 250,
                                                      "column": 49
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              }
                                            ]
                                          }
                                        },
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 11068,
                                          "end": 11102,
                                          "loc": {
                                            "start": {
                                              "line": 251,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 251,
                                              "column": 54
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 11068,
                                            "end": 11101,
                                            "loc": {
                                              "start": {
                                                "line": 251,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 251,
                                                "column": 53
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 11068,
                                              "end": 11087,
                                              "loc": {
                                                "start": {
                                                  "line": 251,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 251,
                                                  "column": 39
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 11068,
                                                "end": 11082,
                                                "loc": {
                                                  "start": {
                                                    "line": 251,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 251,
                                                    "column": 34
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 11068,
                                                  "end": 11077,
                                                  "loc": {
                                                    "start": {
                                                      "line": 251,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 251,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "raycaster"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 11078,
                                                  "end": 11082,
                                                  "loc": {
                                                    "start": {
                                                      "line": 251,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 251,
                                                      "column": 34
                                                    }
                                                  },
                                                  "name": "_uvB"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 11083,
                                                "end": 11087,
                                                "loc": {
                                                  "start": {
                                                    "line": 251,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 251,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "copy"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 11089,
                                                "end": 11099,
                                                "loc": {
                                                  "start": {
                                                    "line": 251,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 251,
                                                    "column": 51
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 11089,
                                                  "end": 11094,
                                                  "loc": {
                                                    "start": {
                                                      "line": 251,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 251,
                                                      "column": 46
                                                    }
                                                  },
                                                  "name": "uvs_f"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 11096,
                                                  "end": 11097,
                                                  "loc": {
                                                    "start": {
                                                      "line": 251,
                                                      "column": 48
                                                    },
                                                    "end": {
                                                      "line": 251,
                                                      "column": 49
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              }
                                            ]
                                          }
                                        },
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 11123,
                                          "end": 11157,
                                          "loc": {
                                            "start": {
                                              "line": 252,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 252,
                                              "column": 54
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 11123,
                                            "end": 11156,
                                            "loc": {
                                              "start": {
                                                "line": 252,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 252,
                                                "column": 53
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 11123,
                                              "end": 11142,
                                              "loc": {
                                                "start": {
                                                  "line": 252,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 252,
                                                  "column": 39
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 11123,
                                                "end": 11137,
                                                "loc": {
                                                  "start": {
                                                    "line": 252,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 252,
                                                    "column": 34
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 11123,
                                                  "end": 11132,
                                                  "loc": {
                                                    "start": {
                                                      "line": 252,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 252,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "raycaster"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 11133,
                                                  "end": 11137,
                                                  "loc": {
                                                    "start": {
                                                      "line": 252,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 252,
                                                      "column": 34
                                                    }
                                                  },
                                                  "name": "_uvC"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 11138,
                                                "end": 11142,
                                                "loc": {
                                                  "start": {
                                                    "line": 252,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 252,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "copy"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 11144,
                                                "end": 11154,
                                                "loc": {
                                                  "start": {
                                                    "line": 252,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 252,
                                                    "column": 51
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 11144,
                                                  "end": 11149,
                                                  "loc": {
                                                    "start": {
                                                      "line": 252,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 252,
                                                      "column": 46
                                                    }
                                                  },
                                                  "name": "uvs_f"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 11151,
                                                  "end": 11152,
                                                  "loc": {
                                                    "start": {
                                                      "line": 252,
                                                      "column": 48
                                                    },
                                                    "end": {
                                                      "line": 252,
                                                      "column": 49
                                                    }
                                                  },
                                                  "value": 2,
                                                  "rawValue": 2,
                                                  "raw": "2"
                                                },
                                                "computed": true
                                              }
                                            ]
                                          }
                                        },
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 11178,
                                          "end": 11317,
                                          "loc": {
                                            "start": {
                                              "line": 253,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 253,
                                              "column": 159
                                            }
                                          },
                                          "expression": {
                                            "type": "AssignmentExpression",
                                            "start": 11178,
                                            "end": 11316,
                                            "loc": {
                                              "start": {
                                                "line": 253,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 253,
                                                "column": 158
                                              }
                                            },
                                            "operator": "=",
                                            "left": {
                                              "type": "MemberExpression",
                                              "start": 11178,
                                              "end": 11193,
                                              "loc": {
                                                "start": {
                                                  "line": 253,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 253,
                                                  "column": 35
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 11178,
                                                "end": 11190,
                                                "loc": {
                                                  "start": {
                                                    "line": 253,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 253,
                                                    "column": 32
                                                  }
                                                },
                                                "name": "intersection"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 11191,
                                                "end": 11193,
                                                "loc": {
                                                  "start": {
                                                    "line": 253,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 253,
                                                    "column": 35
                                                  }
                                                },
                                                "name": "uv"
                                              },
                                              "computed": false
                                            },
                                            "right": {
                                              "type": "CallExpression",
                                              "start": 11196,
                                              "end": 11316,
                                              "loc": {
                                                "start": {
                                                  "line": 253,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 253,
                                                  "column": 158
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 11196,
                                                "end": 11210,
                                                "loc": {
                                                  "start": {
                                                    "line": 253,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 253,
                                                    "column": 52
                                                  }
                                                },
                                                "name": "uvIntersection"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 11212,
                                                  "end": 11221,
                                                  "loc": {
                                                    "start": {
                                                      "line": 253,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 253,
                                                      "column": 63
                                                    }
                                                  },
                                                  "name": "raycaster"
                                                },
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 11223,
                                                  "end": 11251,
                                                  "loc": {
                                                    "start": {
                                                      "line": 253,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 253,
                                                      "column": 93
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 11223,
                                                    "end": 11232,
                                                    "loc": {
                                                      "start": {
                                                        "line": 253,
                                                        "column": 65
                                                      },
                                                      "end": {
                                                        "line": 253,
                                                        "column": 74
                                                      }
                                                    },
                                                    "name": "raycaster"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 11233,
                                                    "end": 11251,
                                                    "loc": {
                                                      "start": {
                                                        "line": 253,
                                                        "column": 75
                                                      },
                                                      "end": {
                                                        "line": 253,
                                                        "column": 93
                                                      }
                                                    },
                                                    "name": "_intersectionPoint"
                                                  },
                                                  "computed": false
                                                },
                                                {
                                                  "type": "Identifier",
                                                  "start": 11253,
                                                  "end": 11256,
                                                  "loc": {
                                                    "start": {
                                                      "line": 253,
                                                      "column": 95
                                                    },
                                                    "end": {
                                                      "line": 253,
                                                      "column": 98
                                                    }
                                                  },
                                                  "name": "fvA"
                                                },
                                                {
                                                  "type": "Identifier",
                                                  "start": 11258,
                                                  "end": 11261,
                                                  "loc": {
                                                    "start": {
                                                      "line": 253,
                                                      "column": 100
                                                    },
                                                    "end": {
                                                      "line": 253,
                                                      "column": 103
                                                    }
                                                  },
                                                  "name": "fvB"
                                                },
                                                {
                                                  "type": "Identifier",
                                                  "start": 11263,
                                                  "end": 11266,
                                                  "loc": {
                                                    "start": {
                                                      "line": 253,
                                                      "column": 105
                                                    },
                                                    "end": {
                                                      "line": 253,
                                                      "column": 108
                                                    }
                                                  },
                                                  "name": "fvC"
                                                },
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 11268,
                                                  "end": 11282,
                                                  "loc": {
                                                    "start": {
                                                      "line": 253,
                                                      "column": 110
                                                    },
                                                    "end": {
                                                      "line": 253,
                                                      "column": 124
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 11268,
                                                    "end": 11277,
                                                    "loc": {
                                                      "start": {
                                                        "line": 253,
                                                        "column": 110
                                                      },
                                                      "end": {
                                                        "line": 253,
                                                        "column": 119
                                                      }
                                                    },
                                                    "name": "raycaster"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 11278,
                                                    "end": 11282,
                                                    "loc": {
                                                      "start": {
                                                        "line": 253,
                                                        "column": 120
                                                      },
                                                      "end": {
                                                        "line": 253,
                                                        "column": 124
                                                      }
                                                    },
                                                    "name": "_uvA"
                                                  },
                                                  "computed": false
                                                },
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 11284,
                                                  "end": 11298,
                                                  "loc": {
                                                    "start": {
                                                      "line": 253,
                                                      "column": 126
                                                    },
                                                    "end": {
                                                      "line": 253,
                                                      "column": 140
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 11284,
                                                    "end": 11293,
                                                    "loc": {
                                                      "start": {
                                                        "line": 253,
                                                        "column": 126
                                                      },
                                                      "end": {
                                                        "line": 253,
                                                        "column": 135
                                                      }
                                                    },
                                                    "name": "raycaster"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 11294,
                                                    "end": 11298,
                                                    "loc": {
                                                      "start": {
                                                        "line": 253,
                                                        "column": 136
                                                      },
                                                      "end": {
                                                        "line": 253,
                                                        "column": 140
                                                      }
                                                    },
                                                    "name": "_uvB"
                                                  },
                                                  "computed": false
                                                },
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 11300,
                                                  "end": 11314,
                                                  "loc": {
                                                    "start": {
                                                      "line": 253,
                                                      "column": 142
                                                    },
                                                    "end": {
                                                      "line": 253,
                                                      "column": 156
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 11300,
                                                    "end": 11309,
                                                    "loc": {
                                                      "start": {
                                                        "line": 253,
                                                        "column": 142
                                                      },
                                                      "end": {
                                                        "line": 253,
                                                        "column": 151
                                                      }
                                                    },
                                                    "name": "raycaster"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 11310,
                                                    "end": 11314,
                                                    "loc": {
                                                      "start": {
                                                        "line": 253,
                                                        "column": 152
                                                      },
                                                      "end": {
                                                        "line": 253,
                                                        "column": 156
                                                      }
                                                    },
                                                    "name": "_uvC"
                                                  },
                                                  "computed": false
                                                }
                                              ]
                                            }
                                          }
                                        }
                                      ]
                                    },
                                    "alternate": null
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 11352,
                                    "end": 11377,
                                    "loc": {
                                      "start": {
                                        "line": 255,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 255,
                                        "column": 41
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 11352,
                                      "end": 11376,
                                      "loc": {
                                        "start": {
                                          "line": 255,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 255,
                                          "column": 40
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 11352,
                                        "end": 11369,
                                        "loc": {
                                          "start": {
                                            "line": 255,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 255,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11352,
                                          "end": 11364,
                                          "loc": {
                                            "start": {
                                              "line": 255,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 255,
                                              "column": 28
                                            }
                                          },
                                          "name": "intersection"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11365,
                                          "end": 11369,
                                          "loc": {
                                            "start": {
                                              "line": 255,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 255,
                                              "column": 33
                                            }
                                          },
                                          "name": "face"
                                        },
                                        "computed": false
                                      },
                                      "right": {
                                        "type": "Identifier",
                                        "start": 11372,
                                        "end": 11376,
                                        "loc": {
                                          "start": {
                                            "line": 255,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 255,
                                            "column": 40
                                          }
                                        },
                                        "name": "face"
                                      }
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 11394,
                                    "end": 11421,
                                    "loc": {
                                      "start": {
                                        "line": 256,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 256,
                                        "column": 43
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 11394,
                                      "end": 11420,
                                      "loc": {
                                        "start": {
                                          "line": 256,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 256,
                                          "column": 42
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 11394,
                                        "end": 11416,
                                        "loc": {
                                          "start": {
                                            "line": 256,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 256,
                                            "column": 38
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11394,
                                          "end": 11406,
                                          "loc": {
                                            "start": {
                                              "line": 256,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 256,
                                              "column": 28
                                            }
                                          },
                                          "name": "intersection"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11407,
                                          "end": 11416,
                                          "loc": {
                                            "start": {
                                              "line": 256,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 256,
                                              "column": 38
                                            }
                                          },
                                          "name": "faceIndex"
                                        },
                                        "computed": false
                                      },
                                      "right": {
                                        "type": "Identifier",
                                        "start": 11419,
                                        "end": 11420,
                                        "loc": {
                                          "start": {
                                            "line": 256,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 256,
                                            "column": 42
                                          }
                                        },
                                        "name": "f"
                                      }
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 11438,
                                    "end": 11470,
                                    "loc": {
                                      "start": {
                                        "line": 257,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 257,
                                        "column": 48
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 11438,
                                      "end": 11469,
                                      "loc": {
                                        "start": {
                                          "line": 257,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 257,
                                          "column": 47
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 11438,
                                        "end": 11453,
                                        "loc": {
                                          "start": {
                                            "line": 257,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 257,
                                            "column": 31
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11438,
                                          "end": 11448,
                                          "loc": {
                                            "start": {
                                              "line": 257,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 257,
                                              "column": 26
                                            }
                                          },
                                          "name": "intersects"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11449,
                                          "end": 11453,
                                          "loc": {
                                            "start": {
                                              "line": 257,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 257,
                                              "column": 31
                                            }
                                          },
                                          "name": "push"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 11455,
                                          "end": 11467,
                                          "loc": {
                                            "start": {
                                              "line": 257,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 257,
                                              "column": 45
                                            }
                                          },
                                          "name": "intersection"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "IfStatement",
                                    "start": 11487,
                                    "end": 11557,
                                    "loc": {
                                      "start": {
                                        "line": 258,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 27
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 11491,
                                      "end": 11528,
                                      "loc": {
                                        "start": {
                                          "line": 258,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 258,
                                          "column": 57
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 11491,
                                        "end": 11499,
                                        "loc": {
                                          "start": {
                                            "line": 258,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 258,
                                            "column": 28
                                          }
                                        },
                                        "name": "approach"
                                      },
                                      "operator": "===",
                                      "right": {
                                        "type": "MemberExpression",
                                        "start": 11504,
                                        "end": 11528,
                                        "loc": {
                                          "start": {
                                            "line": 258,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 258,
                                            "column": 57
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 11504,
                                          "end": 11522,
                                          "loc": {
                                            "start": {
                                              "line": 258,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 258,
                                              "column": 51
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 11504,
                                            "end": 11513,
                                            "loc": {
                                              "start": {
                                                "line": 258,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 258,
                                                "column": 42
                                              }
                                            },
                                            "name": "Raycaster"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 11514,
                                            "end": 11522,
                                            "loc": {
                                              "start": {
                                                "line": 258,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 258,
                                                "column": 51
                                              }
                                            },
                                            "name": "Approach"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11523,
                                          "end": 11528,
                                          "loc": {
                                            "start": {
                                              "line": 258,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 258,
                                              "column": 57
                                            }
                                          },
                                          "name": "First"
                                        },
                                        "computed": false
                                      }
                                    },
                                    "consequent": {
                                      "type": "ReturnStatement",
                                      "start": 11550,
                                      "end": 11557,
                                      "loc": {
                                        "start": {
                                          "line": 259,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 259,
                                          "column": 27
                                        }
                                      },
                                      "argument": null
                                    },
                                    "alternate": null
                                  }
                                ]
                              },
                              "alternate": null
                            }
                          ]
                        }
                      }
                    ]
                  },
                  "alternate": null
                }
              }
            ]
          }
        }
      }
    }
  ]
}