{
  "type": "Program",
  "body": [
    {
      "type": "Identifier",
      "id": {
        "type": "Identifier",
        "name": "Vector",
        "range": [
          143,
          149
        ],
        "loc": {
          "start": {
            "line": 13,
            "column": 9
          },
          "end": {
            "line": 13,
            "column": 15
          }
        }
      },
      "params": [
        {
          "type": "Identifier",
          "name": "x",
          "range": [
            150,
            151
          ],
          "loc": {
            "start": {
              "line": 13,
              "column": 16
            },
            "end": {
              "line": 13,
              "column": 17
            }
          }
        },
        {
          "type": "Identifier",
          "name": "y",
          "range": [
            153,
            154
          ],
          "loc": {
            "start": {
              "line": 13,
              "column": 19
            },
            "end": {
              "line": 13,
              "column": 20
            }
          }
        },
        {
          "type": "Identifier",
          "name": "z",
          "range": [
            156,
            157
          ],
          "loc": {
            "start": {
              "line": 13,
              "column": 22
            },
            "end": {
              "line": 13,
              "column": 23
            }
          }
        }
      ],
      "body": {
        "type": "BlockStatement",
        "body": [
          {
            "type": "ExpressionStatement",
            "expression": {
              "type": "AssignmentExpression",
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "ThisExpression",
                  "range": [
                    165,
                    169
                  ],
                  "loc": {
                    "start": {
                      "line": 14,
                      "column": 4
                    },
                    "end": {
                      "line": 14,
                      "column": 8
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "x",
                  "range": [
                    170,
                    171
                  ],
                  "loc": {
                    "start": {
                      "line": 14,
                      "column": 9
                    },
                    "end": {
                      "line": 14,
                      "column": 10
                    }
                  }
                },
                "range": [
                  165,
                  171
                ],
                "loc": {
                  "start": {
                    "line": 14,
                    "column": 4
                  },
                  "end": {
                    "line": 14,
                    "column": 10
                  }
                }
              },
              "right": {
                "type": "LogicalExpression",
                "operator": "||",
                "left": {
                  "type": "Identifier",
                  "name": "x",
                  "range": [
                    174,
                    175
                  ],
                  "loc": {
                    "start": {
                      "line": 14,
                      "column": 13
                    },
                    "end": {
                      "line": 14,
                      "column": 14
                    }
                  }
                },
                "right": {
                  "type": "Literal",
                  "value": 0,
                  "raw": "0",
                  "range": [
                    179,
                    180
                  ],
                  "loc": {
                    "start": {
                      "line": 14,
                      "column": 18
                    },
                    "end": {
                      "line": 14,
                      "column": 19
                    }
                  }
                },
                "range": [
                  174,
                  180
                ],
                "loc": {
                  "start": {
                    "line": 14,
                    "column": 13
                  },
                  "end": {
                    "line": 14,
                    "column": 19
                  }
                }
              },
              "range": [
                165,
                180
              ],
              "loc": {
                "start": {
                  "line": 14,
                  "column": 4
                },
                "end": {
                  "line": 14,
                  "column": 19
                }
              }
            },
            "range": [
              165,
              181
            ],
            "loc": {
              "start": {
                "line": 14,
                "column": 4
              },
              "end": {
                "line": 14,
                "column": 20
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "expression": {
              "type": "AssignmentExpression",
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "ThisExpression",
                  "range": [
                    186,
                    190
                  ],
                  "loc": {
                    "start": {
                      "line": 15,
                      "column": 4
                    },
                    "end": {
                      "line": 15,
                      "column": 8
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "y",
                  "range": [
                    191,
                    192
                  ],
                  "loc": {
                    "start": {
                      "line": 15,
                      "column": 9
                    },
                    "end": {
                      "line": 15,
                      "column": 10
                    }
                  }
                },
                "range": [
                  186,
                  192
                ],
                "loc": {
                  "start": {
                    "line": 15,
                    "column": 4
                  },
                  "end": {
                    "line": 15,
                    "column": 10
                  }
                }
              },
              "right": {
                "type": "LogicalExpression",
                "operator": "||",
                "left": {
                  "type": "Identifier",
                  "name": "y",
                  "range": [
                    195,
                    196
                  ],
                  "loc": {
                    "start": {
                      "line": 15,
                      "column": 13
                    },
                    "end": {
                      "line": 15,
                      "column": 14
                    }
                  }
                },
                "right": {
                  "type": "Literal",
                  "value": 0,
                  "raw": "0",
                  "range": [
                    200,
                    201
                  ],
                  "loc": {
                    "start": {
                      "line": 15,
                      "column": 18
                    },
                    "end": {
                      "line": 15,
                      "column": 19
                    }
                  }
                },
                "range": [
                  195,
                  201
                ],
                "loc": {
                  "start": {
                    "line": 15,
                    "column": 13
                  },
                  "end": {
                    "line": 15,
                    "column": 19
                  }
                }
              },
              "range": [
                186,
                201
              ],
              "loc": {
                "start": {
                  "line": 15,
                  "column": 4
                },
                "end": {
                  "line": 15,
                  "column": 19
                }
              }
            },
            "range": [
              186,
              202
            ],
            "loc": {
              "start": {
                "line": 15,
                "column": 4
              },
              "end": {
                "line": 15,
                "column": 20
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "expression": {
              "type": "AssignmentExpression",
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "ThisExpression",
                  "range": [
                    207,
                    211
                  ],
                  "loc": {
                    "start": {
                      "line": 16,
                      "column": 4
                    },
                    "end": {
                      "line": 16,
                      "column": 8
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "z",
                  "range": [
                    212,
                    213
                  ],
                  "loc": {
                    "start": {
                      "line": 16,
                      "column": 9
                    },
                    "end": {
                      "line": 16,
                      "column": 10
                    }
                  }
                },
                "range": [
                  207,
                  213
                ],
                "loc": {
                  "start": {
                    "line": 16,
                    "column": 4
                  },
                  "end": {
                    "line": 16,
                    "column": 10
                  }
                }
              },
              "right": {
                "type": "LogicalExpression",
                "operator": "||",
                "left": {
                  "type": "Identifier",
                  "name": "z",
                  "range": [
                    216,
                    217
                  ],
                  "loc": {
                    "start": {
                      "line": 16,
                      "column": 13
                    },
                    "end": {
                      "line": 16,
                      "column": 14
                    }
                  }
                },
                "right": {
                  "type": "Literal",
                  "value": 0,
                  "raw": "0",
                  "range": [
                    221,
                    222
                  ],
                  "loc": {
                    "start": {
                      "line": 16,
                      "column": 18
                    },
                    "end": {
                      "line": 16,
                      "column": 19
                    }
                  }
                },
                "range": [
                  216,
                  222
                ],
                "loc": {
                  "start": {
                    "line": 16,
                    "column": 13
                  },
                  "end": {
                    "line": 16,
                    "column": 19
                  }
                }
              },
              "range": [
                207,
                222
              ],
              "loc": {
                "start": {
                  "line": 16,
                  "column": 4
                },
                "end": {
                  "line": 16,
                  "column": 19
                }
              }
            },
            "range": [
              207,
              223
            ],
            "loc": {
              "start": {
                "line": 16,
                "column": 4
              },
              "end": {
                "line": 16,
                "column": 20
              }
            }
          }
        ],
        "range": [
          159,
          225
        ],
        "loc": {
          "start": {
            "line": 13,
            "column": 25
          },
          "end": {
            "line": 17,
            "column": 1
          }
        }
      },
      "generator": false,
      "expression": false,
      "range": [
        134,
        225
      ],
      "loc": {
        "start": {
          "line": 13,
          "column": 0
        },
        "end": {
          "line": 17,
          "column": 1
        }
      },
      "leadingComments": [],
      "name": "_",
      "trailingComments": []
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              227,
              233
            ],
            "loc": {
              "start": {
                "line": 19,
                "column": 0
              },
              "end": {
                "line": 19,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "prototype",
            "range": [
              234,
              243
            ],
            "loc": {
              "start": {
                "line": 19,
                "column": 7
              },
              "end": {
                "line": 19,
                "column": 16
              }
            }
          },
          "range": [
            227,
            243
          ],
          "loc": {
            "start": {
              "line": 19,
              "column": 0
            },
            "end": {
              "line": 19,
              "column": 16
            }
          }
        },
        "right": {
          "type": "ObjectExpression",
          "properties": [
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "negative",
                "range": [
                  300,
                  308
                ],
                "loc": {
                  "start": {
                    "line": 24,
                    "column": 4
                  },
                  "end": {
                    "line": 24,
                    "column": 12
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "NewExpression",
                        "callee": {
                          "type": "Identifier",
                          "name": "Vector",
                          "range": [
                            342,
                            348
                          ],
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 19
                            },
                            "end": {
                              "line": 25,
                              "column": 25
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "operator": "-",
                            "argument": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  350,
                                  354
                                ],
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 31
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "x",
                                "range": [
                                  355,
                                  356
                                ],
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 33
                                  }
                                }
                              },
                              "range": [
                                350,
                                356
                              ],
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 27
                                },
                                "end": {
                                  "line": 25,
                                  "column": 33
                                }
                              }
                            },
                            "prefix": true,
                            "range": [
                              349,
                              356
                            ],
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 26
                              },
                              "end": {
                                "line": 25,
                                "column": 33
                              }
                            }
                          },
                          {
                            "type": "UnaryExpression",
                            "operator": "-",
                            "argument": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  359,
                                  363
                                ],
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 40
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "y",
                                "range": [
                                  364,
                                  365
                                ],
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 42
                                  }
                                }
                              },
                              "range": [
                                359,
                                365
                              ],
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 36
                                },
                                "end": {
                                  "line": 25,
                                  "column": 42
                                }
                              }
                            },
                            "prefix": true,
                            "range": [
                              358,
                              365
                            ],
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 35
                              },
                              "end": {
                                "line": 25,
                                "column": 42
                              }
                            }
                          },
                          {
                            "type": "UnaryExpression",
                            "operator": "-",
                            "argument": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  368,
                                  372
                                ],
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 49
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "z",
                                "range": [
                                  373,
                                  374
                                ],
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 51
                                  }
                                }
                              },
                              "range": [
                                368,
                                374
                              ],
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 45
                                },
                                "end": {
                                  "line": 25,
                                  "column": 51
                                }
                              }
                            },
                            "prefix": true,
                            "range": [
                              367,
                              374
                            ],
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 44
                              },
                              "end": {
                                "line": 25,
                                "column": 51
                              }
                            }
                          }
                        ],
                        "range": [
                          338,
                          375
                        ],
                        "loc": {
                          "start": {
                            "line": 25,
                            "column": 15
                          },
                          "end": {
                            "line": 25,
                            "column": 52
                          }
                        }
                      },
                      "range": [
                        331,
                        376
                      ],
                      "loc": {
                        "start": {
                          "line": 25,
                          "column": 8
                        },
                        "end": {
                          "line": 25,
                          "column": 53
                        }
                      }
                    }
                  ],
                  "range": [
                    321,
                    382
                  ],
                  "loc": {
                    "start": {
                      "line": 24,
                      "column": 25
                    },
                    "end": {
                      "line": 26,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  310,
                  382
                ],
                "loc": {
                  "start": {
                    "line": 24,
                    "column": 14
                  },
                  "end": {
                    "line": 26,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                300,
                382
              ],
              "loc": {
                "start": {
                  "line": 24,
                  "column": 4
                },
                "end": {
                  "line": 26,
                  "column": 5
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n     *\n     * @returns {Vector}\n     ",
                  "range": [
                    252,
                    295
                  ],
                  "loc": {
                    "start": {
                      "line": 20,
                      "column": 4
                    },
                    "end": {
                      "line": 23,
                      "column": 7
                    }
                  }
                }
              ]
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "add",
                "range": [
                  471,
                  474
                ],
                "loc": {
                  "start": {
                    "line": 32,
                    "column": 4
                  },
                  "end": {
                    "line": 32,
                    "column": 7
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "v",
                    "range": [
                      485,
                      486
                    ],
                    "loc": {
                      "start": {
                        "line": 32,
                        "column": 18
                      },
                      "end": {
                        "line": 32,
                        "column": 19
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "BinaryExpression",
                        "operator": "instanceof",
                        "left": {
                          "type": "Identifier",
                          "name": "v",
                          "range": [
                            502,
                            503
                          ],
                          "loc": {
                            "start": {
                              "line": 33,
                              "column": 12
                            },
                            "end": {
                              "line": 33,
                              "column": 13
                            }
                          }
                        },
                        "right": {
                          "type": "Identifier",
                          "name": "Vector",
                          "range": [
                            515,
                            521
                          ],
                          "loc": {
                            "start": {
                              "line": 33,
                              "column": 25
                            },
                            "end": {
                              "line": 33,
                              "column": 31
                            }
                          }
                        },
                        "range": [
                          502,
                          521
                        ],
                        "loc": {
                          "start": {
                            "line": 33,
                            "column": 12
                          },
                          "end": {
                            "line": 33,
                            "column": 31
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "argument": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Vector",
                            "range": [
                              534,
                              540
                            ],
                            "loc": {
                              "start": {
                                "line": 33,
                                "column": 44
                              },
                              "end": {
                                "line": 33,
                                "column": 50
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "BinaryExpression",
                              "operator": "+",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    541,
                                    545
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 55
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    546,
                                    547
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 57
                                    }
                                  }
                                },
                                "range": [
                                  541,
                                  547
                                ],
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 33,
                                    "column": 57
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    550,
                                    551
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 61
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    552,
                                    553
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 63
                                    }
                                  }
                                },
                                "range": [
                                  550,
                                  553
                                ],
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 33,
                                    "column": 63
                                  }
                                }
                              },
                              "range": [
                                541,
                                553
                              ],
                              "loc": {
                                "start": {
                                  "line": 33,
                                  "column": 51
                                },
                                "end": {
                                  "line": 33,
                                  "column": 63
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "+",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    555,
                                    559
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 69
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    560,
                                    561
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 71
                                    }
                                  }
                                },
                                "range": [
                                  555,
                                  561
                                ],
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 65
                                  },
                                  "end": {
                                    "line": 33,
                                    "column": 71
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    564,
                                    565
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 75
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    566,
                                    567
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 77
                                    }
                                  }
                                },
                                "range": [
                                  564,
                                  567
                                ],
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 74
                                  },
                                  "end": {
                                    "line": 33,
                                    "column": 77
                                  }
                                }
                              },
                              "range": [
                                555,
                                567
                              ],
                              "loc": {
                                "start": {
                                  "line": 33,
                                  "column": 65
                                },
                                "end": {
                                  "line": 33,
                                  "column": 77
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "+",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    569,
                                    573
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 83
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    574,
                                    575
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 84
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 85
                                    }
                                  }
                                },
                                "range": [
                                  569,
                                  575
                                ],
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 33,
                                    "column": 85
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    578,
                                    579
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 88
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 89
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    580,
                                    581
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 91
                                    }
                                  }
                                },
                                "range": [
                                  578,
                                  581
                                ],
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 88
                                  },
                                  "end": {
                                    "line": 33,
                                    "column": 91
                                  }
                                }
                              },
                              "range": [
                                569,
                                581
                              ],
                              "loc": {
                                "start": {
                                  "line": 33,
                                  "column": 79
                                },
                                "end": {
                                  "line": 33,
                                  "column": 91
                                }
                              }
                            }
                          ],
                          "range": [
                            530,
                            582
                          ],
                          "loc": {
                            "start": {
                              "line": 33,
                              "column": 40
                            },
                            "end": {
                              "line": 33,
                              "column": 92
                            }
                          }
                        },
                        "range": [
                          523,
                          583
                        ],
                        "loc": {
                          "start": {
                            "line": 33,
                            "column": 33
                          },
                          "end": {
                            "line": 33,
                            "column": 93
                          }
                        }
                      },
                      "alternate": {
                        "type": "ReturnStatement",
                        "argument": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Vector",
                            "range": [
                              608,
                              614
                            ],
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 24
                              },
                              "end": {
                                "line": 34,
                                "column": 30
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "BinaryExpression",
                              "operator": "+",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    615,
                                    619
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 35
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    620,
                                    621
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 37
                                    }
                                  }
                                },
                                "range": [
                                  615,
                                  621
                                ],
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 37
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  624,
                                  625
                                ],
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 41
                                  }
                                }
                              },
                              "range": [
                                615,
                                625
                              ],
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 31
                                },
                                "end": {
                                  "line": 34,
                                  "column": 41
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "+",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    627,
                                    631
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 47
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    632,
                                    633
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 49
                                    }
                                  }
                                },
                                "range": [
                                  627,
                                  633
                                ],
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 49
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  636,
                                  637
                                ],
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 53
                                  }
                                }
                              },
                              "range": [
                                627,
                                637
                              ],
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 43
                                },
                                "end": {
                                  "line": 34,
                                  "column": 53
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "+",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    639,
                                    643
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 59
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    644,
                                    645
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 61
                                    }
                                  }
                                },
                                "range": [
                                  639,
                                  645
                                ],
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 61
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  648,
                                  649
                                ],
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 65
                                  }
                                }
                              },
                              "range": [
                                639,
                                649
                              ],
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 55
                                },
                                "end": {
                                  "line": 34,
                                  "column": 65
                                }
                              }
                            }
                          ],
                          "range": [
                            604,
                            650
                          ],
                          "loc": {
                            "start": {
                              "line": 34,
                              "column": 20
                            },
                            "end": {
                              "line": 34,
                              "column": 66
                            }
                          }
                        },
                        "range": [
                          597,
                          651
                        ],
                        "loc": {
                          "start": {
                            "line": 34,
                            "column": 13
                          },
                          "end": {
                            "line": 34,
                            "column": 67
                          }
                        }
                      },
                      "range": [
                        498,
                        651
                      ],
                      "loc": {
                        "start": {
                          "line": 33,
                          "column": 8
                        },
                        "end": {
                          "line": 34,
                          "column": 67
                        }
                      }
                    }
                  ],
                  "range": [
                    488,
                    657
                  ],
                  "loc": {
                    "start": {
                      "line": 32,
                      "column": 21
                    },
                    "end": {
                      "line": 35,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  476,
                  657
                ],
                "loc": {
                  "start": {
                    "line": 32,
                    "column": 9
                  },
                  "end": {
                    "line": 35,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                471,
                657
              ],
              "loc": {
                "start": {
                  "line": 32,
                  "column": 4
                },
                "end": {
                  "line": 35,
                  "column": 5
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n     *\n     * @param {Vector || number} v\n     * @returns {Vector}\n     ",
                  "range": [
                    388,
                    466
                  ],
                  "loc": {
                    "start": {
                      "line": 27,
                      "column": 4
                    },
                    "end": {
                      "line": 31,
                      "column": 7
                    }
                  }
                }
              ]
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "subtract",
                "range": [
                  663,
                  671
                ],
                "loc": {
                  "start": {
                    "line": 36,
                    "column": 4
                  },
                  "end": {
                    "line": 36,
                    "column": 12
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "v",
                    "range": [
                      682,
                      683
                    ],
                    "loc": {
                      "start": {
                        "line": 36,
                        "column": 23
                      },
                      "end": {
                        "line": 36,
                        "column": 24
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "BinaryExpression",
                        "operator": "instanceof",
                        "left": {
                          "type": "Identifier",
                          "name": "v",
                          "range": [
                            699,
                            700
                          ],
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 12
                            },
                            "end": {
                              "line": 37,
                              "column": 13
                            }
                          }
                        },
                        "right": {
                          "type": "Identifier",
                          "name": "Vector",
                          "range": [
                            712,
                            718
                          ],
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 25
                            },
                            "end": {
                              "line": 37,
                              "column": 31
                            }
                          }
                        },
                        "range": [
                          699,
                          718
                        ],
                        "loc": {
                          "start": {
                            "line": 37,
                            "column": 12
                          },
                          "end": {
                            "line": 37,
                            "column": 31
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "argument": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Vector",
                            "range": [
                              731,
                              737
                            ],
                            "loc": {
                              "start": {
                                "line": 37,
                                "column": 44
                              },
                              "end": {
                                "line": 37,
                                "column": 50
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "BinaryExpression",
                              "operator": "-",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    738,
                                    742
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 55
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    743,
                                    744
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 57
                                    }
                                  }
                                },
                                "range": [
                                  738,
                                  744
                                ],
                                "loc": {
                                  "start": {
                                    "line": 37,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 37,
                                    "column": 57
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    747,
                                    748
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 61
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    749,
                                    750
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 63
                                    }
                                  }
                                },
                                "range": [
                                  747,
                                  750
                                ],
                                "loc": {
                                  "start": {
                                    "line": 37,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 37,
                                    "column": 63
                                  }
                                }
                              },
                              "range": [
                                738,
                                750
                              ],
                              "loc": {
                                "start": {
                                  "line": 37,
                                  "column": 51
                                },
                                "end": {
                                  "line": 37,
                                  "column": 63
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "-",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    752,
                                    756
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 69
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    757,
                                    758
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 71
                                    }
                                  }
                                },
                                "range": [
                                  752,
                                  758
                                ],
                                "loc": {
                                  "start": {
                                    "line": 37,
                                    "column": 65
                                  },
                                  "end": {
                                    "line": 37,
                                    "column": 71
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    761,
                                    762
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 75
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    763,
                                    764
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 77
                                    }
                                  }
                                },
                                "range": [
                                  761,
                                  764
                                ],
                                "loc": {
                                  "start": {
                                    "line": 37,
                                    "column": 74
                                  },
                                  "end": {
                                    "line": 37,
                                    "column": 77
                                  }
                                }
                              },
                              "range": [
                                752,
                                764
                              ],
                              "loc": {
                                "start": {
                                  "line": 37,
                                  "column": 65
                                },
                                "end": {
                                  "line": 37,
                                  "column": 77
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "-",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    766,
                                    770
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 83
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    771,
                                    772
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 84
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 85
                                    }
                                  }
                                },
                                "range": [
                                  766,
                                  772
                                ],
                                "loc": {
                                  "start": {
                                    "line": 37,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 37,
                                    "column": 85
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    775,
                                    776
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 88
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 89
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    777,
                                    778
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 37,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 37,
                                      "column": 91
                                    }
                                  }
                                },
                                "range": [
                                  775,
                                  778
                                ],
                                "loc": {
                                  "start": {
                                    "line": 37,
                                    "column": 88
                                  },
                                  "end": {
                                    "line": 37,
                                    "column": 91
                                  }
                                }
                              },
                              "range": [
                                766,
                                778
                              ],
                              "loc": {
                                "start": {
                                  "line": 37,
                                  "column": 79
                                },
                                "end": {
                                  "line": 37,
                                  "column": 91
                                }
                              }
                            }
                          ],
                          "range": [
                            727,
                            779
                          ],
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 40
                            },
                            "end": {
                              "line": 37,
                              "column": 92
                            }
                          }
                        },
                        "range": [
                          720,
                          780
                        ],
                        "loc": {
                          "start": {
                            "line": 37,
                            "column": 33
                          },
                          "end": {
                            "line": 37,
                            "column": 93
                          }
                        }
                      },
                      "alternate": {
                        "type": "ReturnStatement",
                        "argument": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Vector",
                            "range": [
                              805,
                              811
                            ],
                            "loc": {
                              "start": {
                                "line": 38,
                                "column": 24
                              },
                              "end": {
                                "line": 38,
                                "column": 30
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "BinaryExpression",
                              "operator": "-",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    812,
                                    816
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 35
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    817,
                                    818
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 37
                                    }
                                  }
                                },
                                "range": [
                                  812,
                                  818
                                ],
                                "loc": {
                                  "start": {
                                    "line": 38,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 38,
                                    "column": 37
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  821,
                                  822
                                ],
                                "loc": {
                                  "start": {
                                    "line": 38,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 38,
                                    "column": 41
                                  }
                                }
                              },
                              "range": [
                                812,
                                822
                              ],
                              "loc": {
                                "start": {
                                  "line": 38,
                                  "column": 31
                                },
                                "end": {
                                  "line": 38,
                                  "column": 41
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "-",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    824,
                                    828
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 47
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    829,
                                    830
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 49
                                    }
                                  }
                                },
                                "range": [
                                  824,
                                  830
                                ],
                                "loc": {
                                  "start": {
                                    "line": 38,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 38,
                                    "column": 49
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  833,
                                  834
                                ],
                                "loc": {
                                  "start": {
                                    "line": 38,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 38,
                                    "column": 53
                                  }
                                }
                              },
                              "range": [
                                824,
                                834
                              ],
                              "loc": {
                                "start": {
                                  "line": 38,
                                  "column": 43
                                },
                                "end": {
                                  "line": 38,
                                  "column": 53
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "-",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    836,
                                    840
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 59
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    841,
                                    842
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 61
                                    }
                                  }
                                },
                                "range": [
                                  836,
                                  842
                                ],
                                "loc": {
                                  "start": {
                                    "line": 38,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 38,
                                    "column": 61
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  845,
                                  846
                                ],
                                "loc": {
                                  "start": {
                                    "line": 38,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 38,
                                    "column": 65
                                  }
                                }
                              },
                              "range": [
                                836,
                                846
                              ],
                              "loc": {
                                "start": {
                                  "line": 38,
                                  "column": 55
                                },
                                "end": {
                                  "line": 38,
                                  "column": 65
                                }
                              }
                            }
                          ],
                          "range": [
                            801,
                            847
                          ],
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 20
                            },
                            "end": {
                              "line": 38,
                              "column": 66
                            }
                          }
                        },
                        "range": [
                          794,
                          848
                        ],
                        "loc": {
                          "start": {
                            "line": 38,
                            "column": 13
                          },
                          "end": {
                            "line": 38,
                            "column": 67
                          }
                        }
                      },
                      "range": [
                        695,
                        848
                      ],
                      "loc": {
                        "start": {
                          "line": 37,
                          "column": 8
                        },
                        "end": {
                          "line": 38,
                          "column": 67
                        }
                      }
                    }
                  ],
                  "range": [
                    685,
                    854
                  ],
                  "loc": {
                    "start": {
                      "line": 36,
                      "column": 26
                    },
                    "end": {
                      "line": 39,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  673,
                  854
                ],
                "loc": {
                  "start": {
                    "line": 36,
                    "column": 14
                  },
                  "end": {
                    "line": 39,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                663,
                854
              ],
              "loc": {
                "start": {
                  "line": 36,
                  "column": 4
                },
                "end": {
                  "line": 39,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "multiply",
                "range": [
                  860,
                  868
                ],
                "loc": {
                  "start": {
                    "line": 40,
                    "column": 4
                  },
                  "end": {
                    "line": 40,
                    "column": 12
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "v",
                    "range": [
                      879,
                      880
                    ],
                    "loc": {
                      "start": {
                        "line": 40,
                        "column": 23
                      },
                      "end": {
                        "line": 40,
                        "column": 24
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "BinaryExpression",
                        "operator": "instanceof",
                        "left": {
                          "type": "Identifier",
                          "name": "v",
                          "range": [
                            896,
                            897
                          ],
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 12
                            },
                            "end": {
                              "line": 41,
                              "column": 13
                            }
                          }
                        },
                        "right": {
                          "type": "Identifier",
                          "name": "Vector",
                          "range": [
                            909,
                            915
                          ],
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 25
                            },
                            "end": {
                              "line": 41,
                              "column": 31
                            }
                          }
                        },
                        "range": [
                          896,
                          915
                        ],
                        "loc": {
                          "start": {
                            "line": 41,
                            "column": 12
                          },
                          "end": {
                            "line": 41,
                            "column": 31
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "argument": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Vector",
                            "range": [
                              928,
                              934
                            ],
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 44
                              },
                              "end": {
                                "line": 41,
                                "column": 50
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    935,
                                    939
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 55
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    940,
                                    941
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 57
                                    }
                                  }
                                },
                                "range": [
                                  935,
                                  941
                                ],
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 57
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    944,
                                    945
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 61
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    946,
                                    947
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 63
                                    }
                                  }
                                },
                                "range": [
                                  944,
                                  947
                                ],
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 63
                                  }
                                }
                              },
                              "range": [
                                935,
                                947
                              ],
                              "loc": {
                                "start": {
                                  "line": 41,
                                  "column": 51
                                },
                                "end": {
                                  "line": 41,
                                  "column": 63
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    949,
                                    953
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 69
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    954,
                                    955
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 71
                                    }
                                  }
                                },
                                "range": [
                                  949,
                                  955
                                ],
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 65
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 71
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    958,
                                    959
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 75
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    960,
                                    961
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 77
                                    }
                                  }
                                },
                                "range": [
                                  958,
                                  961
                                ],
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 74
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 77
                                  }
                                }
                              },
                              "range": [
                                949,
                                961
                              ],
                              "loc": {
                                "start": {
                                  "line": 41,
                                  "column": 65
                                },
                                "end": {
                                  "line": 41,
                                  "column": 77
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    963,
                                    967
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 83
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    968,
                                    969
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 84
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 85
                                    }
                                  }
                                },
                                "range": [
                                  963,
                                  969
                                ],
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 85
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    972,
                                    973
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 88
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 89
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    974,
                                    975
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 91
                                    }
                                  }
                                },
                                "range": [
                                  972,
                                  975
                                ],
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 88
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 91
                                  }
                                }
                              },
                              "range": [
                                963,
                                975
                              ],
                              "loc": {
                                "start": {
                                  "line": 41,
                                  "column": 79
                                },
                                "end": {
                                  "line": 41,
                                  "column": 91
                                }
                              }
                            }
                          ],
                          "range": [
                            924,
                            976
                          ],
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 40
                            },
                            "end": {
                              "line": 41,
                              "column": 92
                            }
                          }
                        },
                        "range": [
                          917,
                          977
                        ],
                        "loc": {
                          "start": {
                            "line": 41,
                            "column": 33
                          },
                          "end": {
                            "line": 41,
                            "column": 93
                          }
                        }
                      },
                      "alternate": {
                        "type": "ReturnStatement",
                        "argument": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Vector",
                            "range": [
                              1002,
                              1008
                            ],
                            "loc": {
                              "start": {
                                "line": 42,
                                "column": 24
                              },
                              "end": {
                                "line": 42,
                                "column": 30
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1009,
                                    1013
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 42,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 42,
                                      "column": 35
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    1014,
                                    1015
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 42,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 42,
                                      "column": 37
                                    }
                                  }
                                },
                                "range": [
                                  1009,
                                  1015
                                ],
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 37
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  1018,
                                  1019
                                ],
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 41
                                  }
                                }
                              },
                              "range": [
                                1009,
                                1019
                              ],
                              "loc": {
                                "start": {
                                  "line": 42,
                                  "column": 31
                                },
                                "end": {
                                  "line": 42,
                                  "column": 41
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1021,
                                    1025
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 42,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 42,
                                      "column": 47
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    1026,
                                    1027
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 42,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 42,
                                      "column": 49
                                    }
                                  }
                                },
                                "range": [
                                  1021,
                                  1027
                                ],
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 49
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  1030,
                                  1031
                                ],
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 53
                                  }
                                }
                              },
                              "range": [
                                1021,
                                1031
                              ],
                              "loc": {
                                "start": {
                                  "line": 42,
                                  "column": 43
                                },
                                "end": {
                                  "line": 42,
                                  "column": 53
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1033,
                                    1037
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 42,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 42,
                                      "column": 59
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    1038,
                                    1039
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 42,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 42,
                                      "column": 61
                                    }
                                  }
                                },
                                "range": [
                                  1033,
                                  1039
                                ],
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 61
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  1042,
                                  1043
                                ],
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 65
                                  }
                                }
                              },
                              "range": [
                                1033,
                                1043
                              ],
                              "loc": {
                                "start": {
                                  "line": 42,
                                  "column": 55
                                },
                                "end": {
                                  "line": 42,
                                  "column": 65
                                }
                              }
                            }
                          ],
                          "range": [
                            998,
                            1044
                          ],
                          "loc": {
                            "start": {
                              "line": 42,
                              "column": 20
                            },
                            "end": {
                              "line": 42,
                              "column": 66
                            }
                          }
                        },
                        "range": [
                          991,
                          1045
                        ],
                        "loc": {
                          "start": {
                            "line": 42,
                            "column": 13
                          },
                          "end": {
                            "line": 42,
                            "column": 67
                          }
                        }
                      },
                      "range": [
                        892,
                        1045
                      ],
                      "loc": {
                        "start": {
                          "line": 41,
                          "column": 8
                        },
                        "end": {
                          "line": 42,
                          "column": 67
                        }
                      }
                    }
                  ],
                  "range": [
                    882,
                    1051
                  ],
                  "loc": {
                    "start": {
                      "line": 40,
                      "column": 26
                    },
                    "end": {
                      "line": 43,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  870,
                  1051
                ],
                "loc": {
                  "start": {
                    "line": 40,
                    "column": 14
                  },
                  "end": {
                    "line": 43,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                860,
                1051
              ],
              "loc": {
                "start": {
                  "line": 40,
                  "column": 4
                },
                "end": {
                  "line": 43,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "divide",
                "range": [
                  1057,
                  1063
                ],
                "loc": {
                  "start": {
                    "line": 44,
                    "column": 4
                  },
                  "end": {
                    "line": 44,
                    "column": 10
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "v",
                    "range": [
                      1074,
                      1075
                    ],
                    "loc": {
                      "start": {
                        "line": 44,
                        "column": 21
                      },
                      "end": {
                        "line": 44,
                        "column": 22
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "BinaryExpression",
                        "operator": "instanceof",
                        "left": {
                          "type": "Identifier",
                          "name": "v",
                          "range": [
                            1091,
                            1092
                          ],
                          "loc": {
                            "start": {
                              "line": 45,
                              "column": 12
                            },
                            "end": {
                              "line": 45,
                              "column": 13
                            }
                          }
                        },
                        "right": {
                          "type": "Identifier",
                          "name": "Vector",
                          "range": [
                            1104,
                            1110
                          ],
                          "loc": {
                            "start": {
                              "line": 45,
                              "column": 25
                            },
                            "end": {
                              "line": 45,
                              "column": 31
                            }
                          }
                        },
                        "range": [
                          1091,
                          1110
                        ],
                        "loc": {
                          "start": {
                            "line": 45,
                            "column": 12
                          },
                          "end": {
                            "line": 45,
                            "column": 31
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "argument": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Vector",
                            "range": [
                              1123,
                              1129
                            ],
                            "loc": {
                              "start": {
                                "line": 45,
                                "column": 44
                              },
                              "end": {
                                "line": 45,
                                "column": 50
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "BinaryExpression",
                              "operator": "/",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1130,
                                    1134
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 55
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    1135,
                                    1136
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 57
                                    }
                                  }
                                },
                                "range": [
                                  1130,
                                  1136
                                ],
                                "loc": {
                                  "start": {
                                    "line": 45,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 57
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    1139,
                                    1140
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 61
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    1141,
                                    1142
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 63
                                    }
                                  }
                                },
                                "range": [
                                  1139,
                                  1142
                                ],
                                "loc": {
                                  "start": {
                                    "line": 45,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 63
                                  }
                                }
                              },
                              "range": [
                                1130,
                                1142
                              ],
                              "loc": {
                                "start": {
                                  "line": 45,
                                  "column": 51
                                },
                                "end": {
                                  "line": 45,
                                  "column": 63
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "/",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1144,
                                    1148
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 69
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    1149,
                                    1150
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 71
                                    }
                                  }
                                },
                                "range": [
                                  1144,
                                  1150
                                ],
                                "loc": {
                                  "start": {
                                    "line": 45,
                                    "column": 65
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 71
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    1153,
                                    1154
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 75
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    1155,
                                    1156
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 77
                                    }
                                  }
                                },
                                "range": [
                                  1153,
                                  1156
                                ],
                                "loc": {
                                  "start": {
                                    "line": 45,
                                    "column": 74
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 77
                                  }
                                }
                              },
                              "range": [
                                1144,
                                1156
                              ],
                              "loc": {
                                "start": {
                                  "line": 45,
                                  "column": 65
                                },
                                "end": {
                                  "line": 45,
                                  "column": 77
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "/",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1158,
                                    1162
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 83
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    1163,
                                    1164
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 84
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 85
                                    }
                                  }
                                },
                                "range": [
                                  1158,
                                  1164
                                ],
                                "loc": {
                                  "start": {
                                    "line": 45,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 85
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    1167,
                                    1168
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 88
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 89
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    1169,
                                    1170
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 45,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 45,
                                      "column": 91
                                    }
                                  }
                                },
                                "range": [
                                  1167,
                                  1170
                                ],
                                "loc": {
                                  "start": {
                                    "line": 45,
                                    "column": 88
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 91
                                  }
                                }
                              },
                              "range": [
                                1158,
                                1170
                              ],
                              "loc": {
                                "start": {
                                  "line": 45,
                                  "column": 79
                                },
                                "end": {
                                  "line": 45,
                                  "column": 91
                                }
                              }
                            }
                          ],
                          "range": [
                            1119,
                            1171
                          ],
                          "loc": {
                            "start": {
                              "line": 45,
                              "column": 40
                            },
                            "end": {
                              "line": 45,
                              "column": 92
                            }
                          }
                        },
                        "range": [
                          1112,
                          1172
                        ],
                        "loc": {
                          "start": {
                            "line": 45,
                            "column": 33
                          },
                          "end": {
                            "line": 45,
                            "column": 93
                          }
                        }
                      },
                      "alternate": {
                        "type": "ReturnStatement",
                        "argument": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Vector",
                            "range": [
                              1197,
                              1203
                            ],
                            "loc": {
                              "start": {
                                "line": 46,
                                "column": 24
                              },
                              "end": {
                                "line": 46,
                                "column": 30
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "BinaryExpression",
                              "operator": "/",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1204,
                                    1208
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 46,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 46,
                                      "column": 35
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    1209,
                                    1210
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 46,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 46,
                                      "column": 37
                                    }
                                  }
                                },
                                "range": [
                                  1204,
                                  1210
                                ],
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 37
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  1213,
                                  1214
                                ],
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 41
                                  }
                                }
                              },
                              "range": [
                                1204,
                                1214
                              ],
                              "loc": {
                                "start": {
                                  "line": 46,
                                  "column": 31
                                },
                                "end": {
                                  "line": 46,
                                  "column": 41
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "/",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1216,
                                    1220
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 46,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 46,
                                      "column": 47
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    1221,
                                    1222
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 46,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 46,
                                      "column": 49
                                    }
                                  }
                                },
                                "range": [
                                  1216,
                                  1222
                                ],
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 49
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  1225,
                                  1226
                                ],
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 53
                                  }
                                }
                              },
                              "range": [
                                1216,
                                1226
                              ],
                              "loc": {
                                "start": {
                                  "line": 46,
                                  "column": 43
                                },
                                "end": {
                                  "line": 46,
                                  "column": 53
                                }
                              }
                            },
                            {
                              "type": "BinaryExpression",
                              "operator": "/",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1228,
                                    1232
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 46,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 46,
                                      "column": 59
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    1233,
                                    1234
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 46,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 46,
                                      "column": 61
                                    }
                                  }
                                },
                                "range": [
                                  1228,
                                  1234
                                ],
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 61
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  1237,
                                  1238
                                ],
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 65
                                  }
                                }
                              },
                              "range": [
                                1228,
                                1238
                              ],
                              "loc": {
                                "start": {
                                  "line": 46,
                                  "column": 55
                                },
                                "end": {
                                  "line": 46,
                                  "column": 65
                                }
                              }
                            }
                          ],
                          "range": [
                            1193,
                            1239
                          ],
                          "loc": {
                            "start": {
                              "line": 46,
                              "column": 20
                            },
                            "end": {
                              "line": 46,
                              "column": 66
                            }
                          }
                        },
                        "range": [
                          1186,
                          1240
                        ],
                        "loc": {
                          "start": {
                            "line": 46,
                            "column": 13
                          },
                          "end": {
                            "line": 46,
                            "column": 67
                          }
                        }
                      },
                      "range": [
                        1087,
                        1240
                      ],
                      "loc": {
                        "start": {
                          "line": 45,
                          "column": 8
                        },
                        "end": {
                          "line": 46,
                          "column": 67
                        }
                      }
                    }
                  ],
                  "range": [
                    1077,
                    1246
                  ],
                  "loc": {
                    "start": {
                      "line": 44,
                      "column": 24
                    },
                    "end": {
                      "line": 47,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1065,
                  1246
                ],
                "loc": {
                  "start": {
                    "line": 44,
                    "column": 12
                  },
                  "end": {
                    "line": 47,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                1057,
                1246
              ],
              "loc": {
                "start": {
                  "line": 44,
                  "column": 4
                },
                "end": {
                  "line": 47,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "equals",
                "range": [
                  1252,
                  1258
                ],
                "loc": {
                  "start": {
                    "line": 48,
                    "column": 4
                  },
                  "end": {
                    "line": 48,
                    "column": 10
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "v",
                    "range": [
                      1269,
                      1270
                    ],
                    "loc": {
                      "start": {
                        "line": 48,
                        "column": 21
                      },
                      "end": {
                        "line": 48,
                        "column": 22
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "LogicalExpression",
                        "operator": "&&",
                        "left": {
                          "type": "LogicalExpression",
                          "operator": "&&",
                          "left": {
                            "type": "BinaryExpression",
                            "operator": "==",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  1289,
                                  1293
                                ],
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 19
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "x",
                                "range": [
                                  1294,
                                  1295
                                ],
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 21
                                  }
                                }
                              },
                              "range": [
                                1289,
                                1295
                              ],
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 15
                                },
                                "end": {
                                  "line": 49,
                                  "column": 21
                                }
                              }
                            },
                            "right": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  1299,
                                  1300
                                ],
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 26
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "x",
                                "range": [
                                  1301,
                                  1302
                                ],
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 28
                                  }
                                }
                              },
                              "range": [
                                1299,
                                1302
                              ],
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 25
                                },
                                "end": {
                                  "line": 49,
                                  "column": 28
                                }
                              }
                            },
                            "range": [
                              1289,
                              1302
                            ],
                            "loc": {
                              "start": {
                                "line": 49,
                                "column": 15
                              },
                              "end": {
                                "line": 49,
                                "column": 28
                              }
                            }
                          },
                          "right": {
                            "type": "BinaryExpression",
                            "operator": "==",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  1306,
                                  1310
                                ],
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "y",
                                "range": [
                                  1311,
                                  1312
                                ],
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 38
                                  }
                                }
                              },
                              "range": [
                                1306,
                                1312
                              ],
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 32
                                },
                                "end": {
                                  "line": 49,
                                  "column": 38
                                }
                              }
                            },
                            "right": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  1316,
                                  1317
                                ],
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 43
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "y",
                                "range": [
                                  1318,
                                  1319
                                ],
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 45
                                  }
                                }
                              },
                              "range": [
                                1316,
                                1319
                              ],
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 42
                                },
                                "end": {
                                  "line": 49,
                                  "column": 45
                                }
                              }
                            },
                            "range": [
                              1306,
                              1319
                            ],
                            "loc": {
                              "start": {
                                "line": 49,
                                "column": 32
                              },
                              "end": {
                                "line": 49,
                                "column": 45
                              }
                            }
                          },
                          "range": [
                            1289,
                            1319
                          ],
                          "loc": {
                            "start": {
                              "line": 49,
                              "column": 15
                            },
                            "end": {
                              "line": 49,
                              "column": 45
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "==",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                1323,
                                1327
                              ],
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 49
                                },
                                "end": {
                                  "line": 49,
                                  "column": 53
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                1328,
                                1329
                              ],
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 54
                                },
                                "end": {
                                  "line": 49,
                                  "column": 55
                                }
                              }
                            },
                            "range": [
                              1323,
                              1329
                            ],
                            "loc": {
                              "start": {
                                "line": 49,
                                "column": 49
                              },
                              "end": {
                                "line": 49,
                                "column": 55
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "v",
                              "range": [
                                1333,
                                1334
                              ],
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 59
                                },
                                "end": {
                                  "line": 49,
                                  "column": 60
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                1335,
                                1336
                              ],
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 61
                                },
                                "end": {
                                  "line": 49,
                                  "column": 62
                                }
                              }
                            },
                            "range": [
                              1333,
                              1336
                            ],
                            "loc": {
                              "start": {
                                "line": 49,
                                "column": 59
                              },
                              "end": {
                                "line": 49,
                                "column": 62
                              }
                            }
                          },
                          "range": [
                            1323,
                            1336
                          ],
                          "loc": {
                            "start": {
                              "line": 49,
                              "column": 49
                            },
                            "end": {
                              "line": 49,
                              "column": 62
                            }
                          }
                        },
                        "range": [
                          1289,
                          1336
                        ],
                        "loc": {
                          "start": {
                            "line": 49,
                            "column": 15
                          },
                          "end": {
                            "line": 49,
                            "column": 62
                          }
                        }
                      },
                      "range": [
                        1282,
                        1337
                      ],
                      "loc": {
                        "start": {
                          "line": 49,
                          "column": 8
                        },
                        "end": {
                          "line": 49,
                          "column": 63
                        }
                      }
                    }
                  ],
                  "range": [
                    1272,
                    1343
                  ],
                  "loc": {
                    "start": {
                      "line": 48,
                      "column": 24
                    },
                    "end": {
                      "line": 50,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1260,
                  1343
                ],
                "loc": {
                  "start": {
                    "line": 48,
                    "column": 12
                  },
                  "end": {
                    "line": 50,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                1252,
                1343
              ],
              "loc": {
                "start": {
                  "line": 48,
                  "column": 4
                },
                "end": {
                  "line": 50,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "dot",
                "range": [
                  1349,
                  1352
                ],
                "loc": {
                  "start": {
                    "line": 51,
                    "column": 4
                  },
                  "end": {
                    "line": 51,
                    "column": 7
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "v",
                    "range": [
                      1363,
                      1364
                    ],
                    "loc": {
                      "start": {
                        "line": 51,
                        "column": 18
                      },
                      "end": {
                        "line": 51,
                        "column": 19
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "BinaryExpression",
                        "operator": "+",
                        "left": {
                          "type": "BinaryExpression",
                          "operator": "+",
                          "left": {
                            "type": "BinaryExpression",
                            "operator": "*",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  1383,
                                  1387
                                ],
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 19
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "x",
                                "range": [
                                  1388,
                                  1389
                                ],
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 21
                                  }
                                }
                              },
                              "range": [
                                1383,
                                1389
                              ],
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 15
                                },
                                "end": {
                                  "line": 52,
                                  "column": 21
                                }
                              }
                            },
                            "right": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  1392,
                                  1393
                                ],
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 25
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "x",
                                "range": [
                                  1394,
                                  1395
                                ],
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 27
                                  }
                                }
                              },
                              "range": [
                                1392,
                                1395
                              ],
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 24
                                },
                                "end": {
                                  "line": 52,
                                  "column": 27
                                }
                              }
                            },
                            "range": [
                              1383,
                              1395
                            ],
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 15
                              },
                              "end": {
                                "line": 52,
                                "column": 27
                              }
                            }
                          },
                          "right": {
                            "type": "BinaryExpression",
                            "operator": "*",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  1398,
                                  1402
                                ],
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 34
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "y",
                                "range": [
                                  1403,
                                  1404
                                ],
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 36
                                  }
                                }
                              },
                              "range": [
                                1398,
                                1404
                              ],
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 30
                                },
                                "end": {
                                  "line": 52,
                                  "column": 36
                                }
                              }
                            },
                            "right": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "v",
                                "range": [
                                  1407,
                                  1408
                                ],
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 40
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "y",
                                "range": [
                                  1409,
                                  1410
                                ],
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 42
                                  }
                                }
                              },
                              "range": [
                                1407,
                                1410
                              ],
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 39
                                },
                                "end": {
                                  "line": 52,
                                  "column": 42
                                }
                              }
                            },
                            "range": [
                              1398,
                              1410
                            ],
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 30
                              },
                              "end": {
                                "line": 52,
                                "column": 42
                              }
                            }
                          },
                          "range": [
                            1383,
                            1410
                          ],
                          "loc": {
                            "start": {
                              "line": 52,
                              "column": 15
                            },
                            "end": {
                              "line": 52,
                              "column": 42
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "*",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                1413,
                                1417
                              ],
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 45
                                },
                                "end": {
                                  "line": 52,
                                  "column": 49
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                1418,
                                1419
                              ],
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 50
                                },
                                "end": {
                                  "line": 52,
                                  "column": 51
                                }
                              }
                            },
                            "range": [
                              1413,
                              1419
                            ],
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 45
                              },
                              "end": {
                                "line": 52,
                                "column": 51
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "v",
                              "range": [
                                1422,
                                1423
                              ],
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 54
                                },
                                "end": {
                                  "line": 52,
                                  "column": 55
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                1424,
                                1425
                              ],
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 56
                                },
                                "end": {
                                  "line": 52,
                                  "column": 57
                                }
                              }
                            },
                            "range": [
                              1422,
                              1425
                            ],
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 54
                              },
                              "end": {
                                "line": 52,
                                "column": 57
                              }
                            }
                          },
                          "range": [
                            1413,
                            1425
                          ],
                          "loc": {
                            "start": {
                              "line": 52,
                              "column": 45
                            },
                            "end": {
                              "line": 52,
                              "column": 57
                            }
                          }
                        },
                        "range": [
                          1383,
                          1425
                        ],
                        "loc": {
                          "start": {
                            "line": 52,
                            "column": 15
                          },
                          "end": {
                            "line": 52,
                            "column": 57
                          }
                        }
                      },
                      "range": [
                        1376,
                        1426
                      ],
                      "loc": {
                        "start": {
                          "line": 52,
                          "column": 8
                        },
                        "end": {
                          "line": 52,
                          "column": 58
                        }
                      }
                    }
                  ],
                  "range": [
                    1366,
                    1432
                  ],
                  "loc": {
                    "start": {
                      "line": 51,
                      "column": 21
                    },
                    "end": {
                      "line": 53,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1354,
                  1432
                ],
                "loc": {
                  "start": {
                    "line": 51,
                    "column": 9
                  },
                  "end": {
                    "line": 53,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                1349,
                1432
              ],
              "loc": {
                "start": {
                  "line": 51,
                  "column": 4
                },
                "end": {
                  "line": 53,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "cross",
                "range": [
                  1438,
                  1443
                ],
                "loc": {
                  "start": {
                    "line": 54,
                    "column": 4
                  },
                  "end": {
                    "line": 54,
                    "column": 9
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "v",
                    "range": [
                      1454,
                      1455
                    ],
                    "loc": {
                      "start": {
                        "line": 54,
                        "column": 20
                      },
                      "end": {
                        "line": 54,
                        "column": 21
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "NewExpression",
                        "callee": {
                          "type": "Identifier",
                          "name": "Vector",
                          "range": [
                            1478,
                            1484
                          ],
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 19
                            },
                            "end": {
                              "line": 55,
                              "column": 25
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "operator": "-",
                            "left": {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1498,
                                    1502
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    1503,
                                    1504
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 18
                                    }
                                  }
                                },
                                "range": [
                                  1498,
                                  1504
                                ],
                                "loc": {
                                  "start": {
                                    "line": 56,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 56,
                                    "column": 18
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    1507,
                                    1508
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 22
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    1509,
                                    1510
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 24
                                    }
                                  }
                                },
                                "range": [
                                  1507,
                                  1510
                                ],
                                "loc": {
                                  "start": {
                                    "line": 56,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 56,
                                    "column": 24
                                  }
                                }
                              },
                              "range": [
                                1498,
                                1510
                              ],
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 12
                                },
                                "end": {
                                  "line": 56,
                                  "column": 24
                                }
                              }
                            },
                            "right": {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1513,
                                    1517
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    1518,
                                    1519
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 33
                                    }
                                  }
                                },
                                "range": [
                                  1513,
                                  1519
                                ],
                                "loc": {
                                  "start": {
                                    "line": 56,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 56,
                                    "column": 33
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    1522,
                                    1523
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    1524,
                                    1525
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 39
                                    }
                                  }
                                },
                                "range": [
                                  1522,
                                  1525
                                ],
                                "loc": {
                                  "start": {
                                    "line": 56,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 56,
                                    "column": 39
                                  }
                                }
                              },
                              "range": [
                                1513,
                                1525
                              ],
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 27
                                },
                                "end": {
                                  "line": 56,
                                  "column": 39
                                }
                              }
                            },
                            "range": [
                              1498,
                              1525
                            ],
                            "loc": {
                              "start": {
                                "line": 56,
                                "column": 12
                              },
                              "end": {
                                "line": 56,
                                "column": 39
                              }
                            }
                          },
                          {
                            "type": "BinaryExpression",
                            "operator": "-",
                            "left": {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1539,
                                    1543
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    1544,
                                    1545
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 18
                                    }
                                  }
                                },
                                "range": [
                                  1539,
                                  1545
                                ],
                                "loc": {
                                  "start": {
                                    "line": 57,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 57,
                                    "column": 18
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    1548,
                                    1549
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 22
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    1550,
                                    1551
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 24
                                    }
                                  }
                                },
                                "range": [
                                  1548,
                                  1551
                                ],
                                "loc": {
                                  "start": {
                                    "line": 57,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 57,
                                    "column": 24
                                  }
                                }
                              },
                              "range": [
                                1539,
                                1551
                              ],
                              "loc": {
                                "start": {
                                  "line": 57,
                                  "column": 12
                                },
                                "end": {
                                  "line": 57,
                                  "column": 24
                                }
                              }
                            },
                            "right": {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1554,
                                    1558
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    1559,
                                    1560
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 33
                                    }
                                  }
                                },
                                "range": [
                                  1554,
                                  1560
                                ],
                                "loc": {
                                  "start": {
                                    "line": 57,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 57,
                                    "column": 33
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    1563,
                                    1564
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    1565,
                                    1566
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 39
                                    }
                                  }
                                },
                                "range": [
                                  1563,
                                  1566
                                ],
                                "loc": {
                                  "start": {
                                    "line": 57,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 57,
                                    "column": 39
                                  }
                                }
                              },
                              "range": [
                                1554,
                                1566
                              ],
                              "loc": {
                                "start": {
                                  "line": 57,
                                  "column": 27
                                },
                                "end": {
                                  "line": 57,
                                  "column": 39
                                }
                              }
                            },
                            "range": [
                              1539,
                              1566
                            ],
                            "loc": {
                              "start": {
                                "line": 57,
                                "column": 12
                              },
                              "end": {
                                "line": 57,
                                "column": 39
                              }
                            }
                          },
                          {
                            "type": "BinaryExpression",
                            "operator": "-",
                            "left": {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1580,
                                    1584
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 58,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 58,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    1585,
                                    1586
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 58,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 58,
                                      "column": 18
                                    }
                                  }
                                },
                                "range": [
                                  1580,
                                  1586
                                ],
                                "loc": {
                                  "start": {
                                    "line": 58,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 58,
                                    "column": 18
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    1589,
                                    1590
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 58,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 58,
                                      "column": 22
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    1591,
                                    1592
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 58,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 58,
                                      "column": 24
                                    }
                                  }
                                },
                                "range": [
                                  1589,
                                  1592
                                ],
                                "loc": {
                                  "start": {
                                    "line": 58,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 58,
                                    "column": 24
                                  }
                                }
                              },
                              "range": [
                                1580,
                                1592
                              ],
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 12
                                },
                                "end": {
                                  "line": 58,
                                  "column": 24
                                }
                              }
                            },
                            "right": {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1595,
                                    1599
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 58,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 58,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    1600,
                                    1601
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 58,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 58,
                                      "column": 33
                                    }
                                  }
                                },
                                "range": [
                                  1595,
                                  1601
                                ],
                                "loc": {
                                  "start": {
                                    "line": 58,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 58,
                                    "column": 33
                                  }
                                }
                              },
                              "right": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "v",
                                  "range": [
                                    1604,
                                    1605
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 58,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 58,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    1606,
                                    1607
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 58,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 58,
                                      "column": 39
                                    }
                                  }
                                },
                                "range": [
                                  1604,
                                  1607
                                ],
                                "loc": {
                                  "start": {
                                    "line": 58,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 58,
                                    "column": 39
                                  }
                                }
                              },
                              "range": [
                                1595,
                                1607
                              ],
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 27
                                },
                                "end": {
                                  "line": 58,
                                  "column": 39
                                }
                              }
                            },
                            "range": [
                              1580,
                              1607
                            ],
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 12
                              },
                              "end": {
                                "line": 58,
                                "column": 39
                              }
                            }
                          }
                        ],
                        "range": [
                          1474,
                          1617
                        ],
                        "loc": {
                          "start": {
                            "line": 55,
                            "column": 15
                          },
                          "end": {
                            "line": 59,
                            "column": 9
                          }
                        }
                      },
                      "range": [
                        1467,
                        1618
                      ],
                      "loc": {
                        "start": {
                          "line": 55,
                          "column": 8
                        },
                        "end": {
                          "line": 59,
                          "column": 10
                        }
                      }
                    }
                  ],
                  "range": [
                    1457,
                    1624
                  ],
                  "loc": {
                    "start": {
                      "line": 54,
                      "column": 23
                    },
                    "end": {
                      "line": 60,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1445,
                  1624
                ],
                "loc": {
                  "start": {
                    "line": 54,
                    "column": 11
                  },
                  "end": {
                    "line": 60,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                1438,
                1624
              ],
              "loc": {
                "start": {
                  "line": 54,
                  "column": 4
                },
                "end": {
                  "line": 60,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "length",
                "range": [
                  1630,
                  1636
                ],
                "loc": {
                  "start": {
                    "line": 61,
                    "column": 4
                  },
                  "end": {
                    "line": 61,
                    "column": 10
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Math",
                            "range": [
                              1666,
                              1670
                            ],
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 15
                              },
                              "end": {
                                "line": 62,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "sqrt",
                            "range": [
                              1671,
                              1675
                            ],
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 20
                              },
                              "end": {
                                "line": 62,
                                "column": 24
                              }
                            }
                          },
                          "range": [
                            1666,
                            1675
                          ],
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 15
                            },
                            "end": {
                              "line": 62,
                              "column": 24
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  1676,
                                  1680
                                ],
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 29
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "dot",
                                "range": [
                                  1681,
                                  1684
                                ],
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 33
                                  }
                                }
                              },
                              "range": [
                                1676,
                                1684
                              ],
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 25
                                },
                                "end": {
                                  "line": 62,
                                  "column": 33
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "range": [
                                  1685,
                                  1689
                                ],
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 38
                                  }
                                }
                              }
                            ],
                            "range": [
                              1676,
                              1690
                            ],
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 25
                              },
                              "end": {
                                "line": 62,
                                "column": 39
                              }
                            }
                          }
                        ],
                        "range": [
                          1666,
                          1691
                        ],
                        "loc": {
                          "start": {
                            "line": 62,
                            "column": 15
                          },
                          "end": {
                            "line": 62,
                            "column": 40
                          }
                        }
                      },
                      "range": [
                        1659,
                        1692
                      ],
                      "loc": {
                        "start": {
                          "line": 62,
                          "column": 8
                        },
                        "end": {
                          "line": 62,
                          "column": 41
                        }
                      }
                    }
                  ],
                  "range": [
                    1649,
                    1698
                  ],
                  "loc": {
                    "start": {
                      "line": 61,
                      "column": 23
                    },
                    "end": {
                      "line": 63,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1638,
                  1698
                ],
                "loc": {
                  "start": {
                    "line": 61,
                    "column": 12
                  },
                  "end": {
                    "line": 63,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                1630,
                1698
              ],
              "loc": {
                "start": {
                  "line": 61,
                  "column": 4
                },
                "end": {
                  "line": 63,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "unit",
                "range": [
                  1704,
                  1708
                ],
                "loc": {
                  "start": {
                    "line": 64,
                    "column": 4
                  },
                  "end": {
                    "line": 64,
                    "column": 8
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              1738,
                              1742
                            ],
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 15
                              },
                              "end": {
                                "line": 65,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "divide",
                            "range": [
                              1743,
                              1749
                            ],
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 20
                              },
                              "end": {
                                "line": 65,
                                "column": 26
                              }
                            }
                          },
                          "range": [
                            1738,
                            1749
                          ],
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 15
                            },
                            "end": {
                              "line": 65,
                              "column": 26
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  1750,
                                  1754
                                ],
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 31
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "length",
                                "range": [
                                  1755,
                                  1761
                                ],
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 38
                                  }
                                }
                              },
                              "range": [
                                1750,
                                1761
                              ],
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 27
                                },
                                "end": {
                                  "line": 65,
                                  "column": 38
                                }
                              }
                            },
                            "arguments": [],
                            "range": [
                              1750,
                              1763
                            ],
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 27
                              },
                              "end": {
                                "line": 65,
                                "column": 40
                              }
                            }
                          }
                        ],
                        "range": [
                          1738,
                          1764
                        ],
                        "loc": {
                          "start": {
                            "line": 65,
                            "column": 15
                          },
                          "end": {
                            "line": 65,
                            "column": 41
                          }
                        }
                      },
                      "range": [
                        1731,
                        1765
                      ],
                      "loc": {
                        "start": {
                          "line": 65,
                          "column": 8
                        },
                        "end": {
                          "line": 65,
                          "column": 42
                        }
                      }
                    }
                  ],
                  "range": [
                    1721,
                    1771
                  ],
                  "loc": {
                    "start": {
                      "line": 64,
                      "column": 21
                    },
                    "end": {
                      "line": 66,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1710,
                  1771
                ],
                "loc": {
                  "start": {
                    "line": 64,
                    "column": 10
                  },
                  "end": {
                    "line": 66,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                1704,
                1771
              ],
              "loc": {
                "start": {
                  "line": 64,
                  "column": 4
                },
                "end": {
                  "line": 66,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "min",
                "range": [
                  1777,
                  1780
                ],
                "loc": {
                  "start": {
                    "line": 67,
                    "column": 4
                  },
                  "end": {
                    "line": 67,
                    "column": 7
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Math",
                            "range": [
                              1810,
                              1814
                            ],
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 15
                              },
                              "end": {
                                "line": 68,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "min",
                            "range": [
                              1815,
                              1818
                            ],
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 20
                              },
                              "end": {
                                "line": 68,
                                "column": 23
                              }
                            }
                          },
                          "range": [
                            1810,
                            1818
                          ],
                          "loc": {
                            "start": {
                              "line": 68,
                              "column": 15
                            },
                            "end": {
                              "line": 68,
                              "column": 23
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "Math",
                                "range": [
                                  1819,
                                  1823
                                ],
                                "loc": {
                                  "start": {
                                    "line": 68,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 68,
                                    "column": 28
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "min",
                                "range": [
                                  1824,
                                  1827
                                ],
                                "loc": {
                                  "start": {
                                    "line": 68,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 68,
                                    "column": 32
                                  }
                                }
                              },
                              "range": [
                                1819,
                                1827
                              ],
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 24
                                },
                                "end": {
                                  "line": 68,
                                  "column": 32
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1828,
                                    1832
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 68,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 68,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    1833,
                                    1834
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 68,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 68,
                                      "column": 39
                                    }
                                  }
                                },
                                "range": [
                                  1828,
                                  1834
                                ],
                                "loc": {
                                  "start": {
                                    "line": 68,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 68,
                                    "column": 39
                                  }
                                }
                              },
                              {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1836,
                                    1840
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 68,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 68,
                                      "column": 45
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    1841,
                                    1842
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 68,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 68,
                                      "column": 47
                                    }
                                  }
                                },
                                "range": [
                                  1836,
                                  1842
                                ],
                                "loc": {
                                  "start": {
                                    "line": 68,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 68,
                                    "column": 47
                                  }
                                }
                              }
                            ],
                            "range": [
                              1819,
                              1843
                            ],
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 24
                              },
                              "end": {
                                "line": 68,
                                "column": 48
                              }
                            }
                          },
                          {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                1845,
                                1849
                              ],
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 50
                                },
                                "end": {
                                  "line": 68,
                                  "column": 54
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                1850,
                                1851
                              ],
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 55
                                },
                                "end": {
                                  "line": 68,
                                  "column": 56
                                }
                              }
                            },
                            "range": [
                              1845,
                              1851
                            ],
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 50
                              },
                              "end": {
                                "line": 68,
                                "column": 56
                              }
                            }
                          }
                        ],
                        "range": [
                          1810,
                          1852
                        ],
                        "loc": {
                          "start": {
                            "line": 68,
                            "column": 15
                          },
                          "end": {
                            "line": 68,
                            "column": 57
                          }
                        }
                      },
                      "range": [
                        1803,
                        1853
                      ],
                      "loc": {
                        "start": {
                          "line": 68,
                          "column": 8
                        },
                        "end": {
                          "line": 68,
                          "column": 58
                        }
                      }
                    }
                  ],
                  "range": [
                    1793,
                    1859
                  ],
                  "loc": {
                    "start": {
                      "line": 67,
                      "column": 20
                    },
                    "end": {
                      "line": 69,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1782,
                  1859
                ],
                "loc": {
                  "start": {
                    "line": 67,
                    "column": 9
                  },
                  "end": {
                    "line": 69,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                1777,
                1859
              ],
              "loc": {
                "start": {
                  "line": 67,
                  "column": 4
                },
                "end": {
                  "line": 69,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "max",
                "range": [
                  1865,
                  1868
                ],
                "loc": {
                  "start": {
                    "line": 70,
                    "column": 4
                  },
                  "end": {
                    "line": 70,
                    "column": 7
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Math",
                            "range": [
                              1898,
                              1902
                            ],
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 15
                              },
                              "end": {
                                "line": 71,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "max",
                            "range": [
                              1903,
                              1906
                            ],
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 20
                              },
                              "end": {
                                "line": 71,
                                "column": 23
                              }
                            }
                          },
                          "range": [
                            1898,
                            1906
                          ],
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 15
                            },
                            "end": {
                              "line": 71,
                              "column": 23
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "Math",
                                "range": [
                                  1907,
                                  1911
                                ],
                                "loc": {
                                  "start": {
                                    "line": 71,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 71,
                                    "column": 28
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "max",
                                "range": [
                                  1912,
                                  1915
                                ],
                                "loc": {
                                  "start": {
                                    "line": 71,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 71,
                                    "column": 32
                                  }
                                }
                              },
                              "range": [
                                1907,
                                1915
                              ],
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 24
                                },
                                "end": {
                                  "line": 71,
                                  "column": 32
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1916,
                                    1920
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 71,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 71,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    1921,
                                    1922
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 71,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 71,
                                      "column": 39
                                    }
                                  }
                                },
                                "range": [
                                  1916,
                                  1922
                                ],
                                "loc": {
                                  "start": {
                                    "line": 71,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 71,
                                    "column": 39
                                  }
                                }
                              },
                              {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1924,
                                    1928
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 71,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 71,
                                      "column": 45
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    1929,
                                    1930
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 71,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 71,
                                      "column": 47
                                    }
                                  }
                                },
                                "range": [
                                  1924,
                                  1930
                                ],
                                "loc": {
                                  "start": {
                                    "line": 71,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 71,
                                    "column": 47
                                  }
                                }
                              }
                            ],
                            "range": [
                              1907,
                              1931
                            ],
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 24
                              },
                              "end": {
                                "line": 71,
                                "column": 48
                              }
                            }
                          },
                          {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                1933,
                                1937
                              ],
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 50
                                },
                                "end": {
                                  "line": 71,
                                  "column": 54
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                1938,
                                1939
                              ],
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 55
                                },
                                "end": {
                                  "line": 71,
                                  "column": 56
                                }
                              }
                            },
                            "range": [
                              1933,
                              1939
                            ],
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 50
                              },
                              "end": {
                                "line": 71,
                                "column": 56
                              }
                            }
                          }
                        ],
                        "range": [
                          1898,
                          1940
                        ],
                        "loc": {
                          "start": {
                            "line": 71,
                            "column": 15
                          },
                          "end": {
                            "line": 71,
                            "column": 57
                          }
                        }
                      },
                      "range": [
                        1891,
                        1941
                      ],
                      "loc": {
                        "start": {
                          "line": 71,
                          "column": 8
                        },
                        "end": {
                          "line": 71,
                          "column": 58
                        }
                      }
                    }
                  ],
                  "range": [
                    1881,
                    1947
                  ],
                  "loc": {
                    "start": {
                      "line": 70,
                      "column": 20
                    },
                    "end": {
                      "line": 72,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1870,
                  1947
                ],
                "loc": {
                  "start": {
                    "line": 70,
                    "column": 9
                  },
                  "end": {
                    "line": 72,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                1865,
                1947
              ],
              "loc": {
                "start": {
                  "line": 70,
                  "column": 4
                },
                "end": {
                  "line": 72,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "abs",
                "range": [
                  2001,
                  2004
                ],
                "loc": {
                  "start": {
                    "line": 77,
                    "column": 4
                  },
                  "end": {
                    "line": 77,
                    "column": 7
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Math",
                            "range": [
                              2034,
                              2038
                            ],
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 15
                              },
                              "end": {
                                "line": 78,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "sqrt",
                            "range": [
                              2039,
                              2043
                            ],
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 20
                              },
                              "end": {
                                "line": 78,
                                "column": 24
                              }
                            }
                          },
                          "range": [
                            2034,
                            2043
                          ],
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 15
                            },
                            "end": {
                              "line": 78,
                              "column": 24
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "operator": "+",
                            "left": {
                              "type": "BinaryExpression",
                              "operator": "+",
                              "left": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "Identifier",
                                    "name": "Math",
                                    "range": [
                                      2044,
                                      2048
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 29
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "pow",
                                    "range": [
                                      2049,
                                      2052
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 33
                                      }
                                    }
                                  },
                                  "range": [
                                    2044,
                                    2052
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 33
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        2053,
                                        2057
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 38
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "x",
                                      "range": [
                                        2058,
                                        2059
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 40
                                        }
                                      }
                                    },
                                    "range": [
                                      2053,
                                      2059
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 40
                                      }
                                    }
                                  },
                                  {
                                    "type": "Literal",
                                    "value": 2,
                                    "raw": "2",
                                    "range": [
                                      2061,
                                      2062
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 43
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  2044,
                                  2063
                                ],
                                "loc": {
                                  "start": {
                                    "line": 78,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 78,
                                    "column": 44
                                  }
                                }
                              },
                              "right": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "Identifier",
                                    "name": "Math",
                                    "range": [
                                      2066,
                                      2070
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 51
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "pow",
                                    "range": [
                                      2071,
                                      2074
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 55
                                      }
                                    }
                                  },
                                  "range": [
                                    2066,
                                    2074
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 55
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        2075,
                                        2079
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 60
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "y",
                                      "range": [
                                        2080,
                                        2081
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 62
                                        }
                                      }
                                    },
                                    "range": [
                                      2075,
                                      2081
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 62
                                      }
                                    }
                                  },
                                  {
                                    "type": "Literal",
                                    "value": 2,
                                    "raw": "2",
                                    "range": [
                                      2083,
                                      2084
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 65
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  2066,
                                  2085
                                ],
                                "loc": {
                                  "start": {
                                    "line": 78,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 78,
                                    "column": 66
                                  }
                                }
                              },
                              "range": [
                                2044,
                                2085
                              ],
                              "loc": {
                                "start": {
                                  "line": 78,
                                  "column": 25
                                },
                                "end": {
                                  "line": 78,
                                  "column": 66
                                }
                              }
                            },
                            "right": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "Math",
                                  "range": [
                                    2088,
                                    2092
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 73
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "pow",
                                  "range": [
                                    2093,
                                    2096
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 77
                                    }
                                  }
                                },
                                "range": [
                                  2088,
                                  2096
                                ],
                                "loc": {
                                  "start": {
                                    "line": 78,
                                    "column": 69
                                  },
                                  "end": {
                                    "line": 78,
                                    "column": 77
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      2097,
                                      2101
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 78
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 82
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "z",
                                    "range": [
                                      2102,
                                      2103
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 78,
                                        "column": 83
                                      },
                                      "end": {
                                        "line": 78,
                                        "column": 84
                                      }
                                    }
                                  },
                                  "range": [
                                    2097,
                                    2103
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 78
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 84
                                    }
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "value": 2,
                                  "raw": "2",
                                  "range": [
                                    2105,
                                    2106
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 86
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 87
                                    }
                                  }
                                }
                              ],
                              "range": [
                                2088,
                                2107
                              ],
                              "loc": {
                                "start": {
                                  "line": 78,
                                  "column": 69
                                },
                                "end": {
                                  "line": 78,
                                  "column": 88
                                }
                              }
                            },
                            "range": [
                              2044,
                              2107
                            ],
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 25
                              },
                              "end": {
                                "line": 78,
                                "column": 88
                              }
                            }
                          }
                        ],
                        "range": [
                          2034,
                          2108
                        ],
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 15
                          },
                          "end": {
                            "line": 78,
                            "column": 89
                          }
                        }
                      },
                      "range": [
                        2027,
                        2109
                      ],
                      "loc": {
                        "start": {
                          "line": 78,
                          "column": 8
                        },
                        "end": {
                          "line": 78,
                          "column": 90
                        }
                      }
                    }
                  ],
                  "range": [
                    2017,
                    2115
                  ],
                  "loc": {
                    "start": {
                      "line": 77,
                      "column": 20
                    },
                    "end": {
                      "line": 79,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  2006,
                  2115
                ],
                "loc": {
                  "start": {
                    "line": 77,
                    "column": 9
                  },
                  "end": {
                    "line": 79,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                2001,
                2115
              ],
              "loc": {
                "start": {
                  "line": 77,
                  "column": 4
                },
                "end": {
                  "line": 79,
                  "column": 5
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n     *\n     * @returns {number}\n     ",
                  "range": [
                    1953,
                    1996
                  ],
                  "loc": {
                    "start": {
                      "line": 73,
                      "column": 4
                    },
                    "end": {
                      "line": 76,
                      "column": 7
                    }
                  }
                }
              ]
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "toAngles",
                "range": [
                  2121,
                  2129
                ],
                "loc": {
                  "start": {
                    "line": 80,
                    "column": 4
                  },
                  "end": {
                    "line": 80,
                    "column": 12
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "ObjectExpression",
                        "properties": [
                          {
                            "type": "Property",
                            "key": {
                              "type": "Identifier",
                              "name": "theta",
                              "range": [
                                2173,
                                2178
                              ],
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 12
                                },
                                "end": {
                                  "line": 82,
                                  "column": 17
                                }
                              }
                            },
                            "value": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "Math",
                                  "range": [
                                    2180,
                                    2184
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 23
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "atan2",
                                  "range": [
                                    2185,
                                    2190
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 29
                                    }
                                  }
                                },
                                "range": [
                                  2180,
                                  2190
                                ],
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 29
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      2191,
                                      2195
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 82,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 82,
                                        "column": 34
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "z",
                                    "range": [
                                      2196,
                                      2197
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 82,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 82,
                                        "column": 36
                                      }
                                    }
                                  },
                                  "range": [
                                    2191,
                                    2197
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 36
                                    }
                                  }
                                },
                                {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      2199,
                                      2203
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 82,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 82,
                                        "column": 42
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "x",
                                    "range": [
                                      2204,
                                      2205
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 82,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 82,
                                        "column": 44
                                      }
                                    }
                                  },
                                  "range": [
                                    2199,
                                    2205
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 44
                                    }
                                  }
                                }
                              ],
                              "range": [
                                2180,
                                2206
                              ],
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 19
                                },
                                "end": {
                                  "line": 82,
                                  "column": 45
                                }
                              }
                            },
                            "kind": "init",
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "range": [
                              2173,
                              2206
                            ],
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 12
                              },
                              "end": {
                                "line": 82,
                                "column": 45
                              }
                            }
                          },
                          {
                            "type": "Property",
                            "key": {
                              "type": "Identifier",
                              "name": "phi",
                              "range": [
                                2220,
                                2223
                              ],
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 12
                                },
                                "end": {
                                  "line": 83,
                                  "column": 15
                                }
                              }
                            },
                            "value": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "Math",
                                  "range": [
                                    2225,
                                    2229
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 83,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 83,
                                      "column": 21
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "asin",
                                  "range": [
                                    2230,
                                    2234
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 83,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 83,
                                      "column": 26
                                    }
                                  }
                                },
                                "range": [
                                  2225,
                                  2234
                                ],
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 26
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "operator": "/",
                                  "left": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        2235,
                                        2239
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 83,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 83,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "y",
                                      "range": [
                                        2240,
                                        2241
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 83,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 83,
                                          "column": 33
                                        }
                                      }
                                    },
                                    "range": [
                                      2235,
                                      2241
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 83,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 83,
                                        "column": 33
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "callee": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "ThisExpression",
                                        "range": [
                                          2244,
                                          2248
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 83,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 83,
                                            "column": 40
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "length",
                                        "range": [
                                          2249,
                                          2255
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 83,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 83,
                                            "column": 47
                                          }
                                        }
                                      },
                                      "range": [
                                        2244,
                                        2255
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 83,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 83,
                                          "column": 47
                                        }
                                      }
                                    },
                                    "arguments": [],
                                    "range": [
                                      2244,
                                      2257
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 83,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 83,
                                        "column": 49
                                      }
                                    }
                                  },
                                  "range": [
                                    2235,
                                    2257
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 83,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 83,
                                      "column": 49
                                    }
                                  }
                                }
                              ],
                              "range": [
                                2225,
                                2258
                              ],
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 17
                                },
                                "end": {
                                  "line": 83,
                                  "column": 50
                                }
                              }
                            },
                            "kind": "init",
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "range": [
                              2220,
                              2258
                            ],
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 12
                              },
                              "end": {
                                "line": 83,
                                "column": 50
                              }
                            }
                          }
                        ],
                        "range": [
                          2159,
                          2268
                        ],
                        "loc": {
                          "start": {
                            "line": 81,
                            "column": 15
                          },
                          "end": {
                            "line": 84,
                            "column": 9
                          }
                        }
                      },
                      "range": [
                        2152,
                        2269
                      ],
                      "loc": {
                        "start": {
                          "line": 81,
                          "column": 8
                        },
                        "end": {
                          "line": 84,
                          "column": 10
                        }
                      }
                    }
                  ],
                  "range": [
                    2142,
                    2275
                  ],
                  "loc": {
                    "start": {
                      "line": 80,
                      "column": 25
                    },
                    "end": {
                      "line": 85,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  2131,
                  2275
                ],
                "loc": {
                  "start": {
                    "line": 80,
                    "column": 14
                  },
                  "end": {
                    "line": 85,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                2121,
                2275
              ],
              "loc": {
                "start": {
                  "line": 80,
                  "column": 4
                },
                "end": {
                  "line": 85,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "angleTo",
                "range": [
                  2281,
                  2288
                ],
                "loc": {
                  "start": {
                    "line": 86,
                    "column": 4
                  },
                  "end": {
                    "line": 86,
                    "column": 11
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "a",
                    "range": [
                      2299,
                      2300
                    ],
                    "loc": {
                      "start": {
                        "line": 86,
                        "column": 22
                      },
                      "end": {
                        "line": 86,
                        "column": 23
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Math",
                            "range": [
                              2319,
                              2323
                            ],
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 15
                              },
                              "end": {
                                "line": 87,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "acos",
                            "range": [
                              2324,
                              2328
                            ],
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 20
                              },
                              "end": {
                                "line": 87,
                                "column": 24
                              }
                            }
                          },
                          "range": [
                            2319,
                            2328
                          ],
                          "loc": {
                            "start": {
                              "line": 87,
                              "column": 15
                            },
                            "end": {
                              "line": 87,
                              "column": 24
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "operator": "/",
                            "left": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    2329,
                                    2333
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 29
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "dot",
                                  "range": [
                                    2334,
                                    2337
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 33
                                    }
                                  }
                                },
                                "range": [
                                  2329,
                                  2337
                                ],
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 33
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "name": "a",
                                  "range": [
                                    2338,
                                    2339
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 35
                                    }
                                  }
                                }
                              ],
                              "range": [
                                2329,
                                2340
                              ],
                              "loc": {
                                "start": {
                                  "line": 87,
                                  "column": 25
                                },
                                "end": {
                                  "line": 87,
                                  "column": 36
                                }
                              }
                            },
                            "right": {
                              "type": "BinaryExpression",
                              "operator": "*",
                              "left": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      2344,
                                      2348
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 44
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "length",
                                    "range": [
                                      2349,
                                      2355
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 51
                                      }
                                    }
                                  },
                                  "range": [
                                    2344,
                                    2355
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 51
                                    }
                                  }
                                },
                                "arguments": [],
                                "range": [
                                  2344,
                                  2357
                                ],
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 53
                                  }
                                }
                              },
                              "right": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "Identifier",
                                    "name": "a",
                                    "range": [
                                      2360,
                                      2361
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 57
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "length",
                                    "range": [
                                      2362,
                                      2368
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 64
                                      }
                                    }
                                  },
                                  "range": [
                                    2360,
                                    2368
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 64
                                    }
                                  }
                                },
                                "arguments": [],
                                "range": [
                                  2360,
                                  2370
                                ],
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 66
                                  }
                                }
                              },
                              "range": [
                                2344,
                                2370
                              ],
                              "loc": {
                                "start": {
                                  "line": 87,
                                  "column": 40
                                },
                                "end": {
                                  "line": 87,
                                  "column": 66
                                }
                              }
                            },
                            "range": [
                              2329,
                              2371
                            ],
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 25
                              },
                              "end": {
                                "line": 87,
                                "column": 67
                              }
                            }
                          }
                        ],
                        "range": [
                          2319,
                          2372
                        ],
                        "loc": {
                          "start": {
                            "line": 87,
                            "column": 15
                          },
                          "end": {
                            "line": 87,
                            "column": 68
                          }
                        }
                      },
                      "range": [
                        2312,
                        2373
                      ],
                      "loc": {
                        "start": {
                          "line": 87,
                          "column": 8
                        },
                        "end": {
                          "line": 87,
                          "column": 69
                        }
                      }
                    }
                  ],
                  "range": [
                    2302,
                    2379
                  ],
                  "loc": {
                    "start": {
                      "line": 86,
                      "column": 25
                    },
                    "end": {
                      "line": 88,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  2290,
                  2379
                ],
                "loc": {
                  "start": {
                    "line": 86,
                    "column": 13
                  },
                  "end": {
                    "line": 88,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                2281,
                2379
              ],
              "loc": {
                "start": {
                  "line": 86,
                  "column": 4
                },
                "end": {
                  "line": 88,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "toArray",
                "range": [
                  2385,
                  2392
                ],
                "loc": {
                  "start": {
                    "line": 89,
                    "column": 4
                  },
                  "end": {
                    "line": 89,
                    "column": 11
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "n",
                    "range": [
                      2403,
                      2404
                    ],
                    "loc": {
                      "start": {
                        "line": 89,
                        "column": 22
                      },
                      "end": {
                        "line": 89,
                        "column": 23
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ArrayExpression",
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    2424,
                                    2428
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 20
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "x",
                                  "range": [
                                    2429,
                                    2430
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 22
                                    }
                                  }
                                },
                                "range": [
                                  2424,
                                  2430
                                ],
                                "loc": {
                                  "start": {
                                    "line": 90,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 90,
                                    "column": 22
                                  }
                                }
                              },
                              {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    2432,
                                    2436
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 28
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "y",
                                  "range": [
                                    2437,
                                    2438
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 30
                                    }
                                  }
                                },
                                "range": [
                                  2432,
                                  2438
                                ],
                                "loc": {
                                  "start": {
                                    "line": 90,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 90,
                                    "column": 30
                                  }
                                }
                              },
                              {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    2440,
                                    2444
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 36
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "z",
                                  "range": [
                                    2445,
                                    2446
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 38
                                    }
                                  }
                                },
                                "range": [
                                  2440,
                                  2446
                                ],
                                "loc": {
                                  "start": {
                                    "line": 90,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 90,
                                    "column": 38
                                  }
                                }
                              }
                            ],
                            "range": [
                              2423,
                              2447
                            ],
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 15
                              },
                              "end": {
                                "line": 90,
                                "column": 39
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "slice",
                            "range": [
                              2448,
                              2453
                            ],
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 40
                              },
                              "end": {
                                "line": 90,
                                "column": 45
                              }
                            }
                          },
                          "range": [
                            2423,
                            2453
                          ],
                          "loc": {
                            "start": {
                              "line": 90,
                              "column": 15
                            },
                            "end": {
                              "line": 90,
                              "column": 45
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "value": 0,
                            "raw": "0",
                            "range": [
                              2454,
                              2455
                            ],
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 46
                              },
                              "end": {
                                "line": 90,
                                "column": 47
                              }
                            }
                          },
                          {
                            "type": "LogicalExpression",
                            "operator": "||",
                            "left": {
                              "type": "Identifier",
                              "name": "n",
                              "range": [
                                2457,
                                2458
                              ],
                              "loc": {
                                "start": {
                                  "line": 90,
                                  "column": 49
                                },
                                "end": {
                                  "line": 90,
                                  "column": 50
                                }
                              }
                            },
                            "right": {
                              "type": "Literal",
                              "value": 3,
                              "raw": "3",
                              "range": [
                                2462,
                                2463
                              ],
                              "loc": {
                                "start": {
                                  "line": 90,
                                  "column": 54
                                },
                                "end": {
                                  "line": 90,
                                  "column": 55
                                }
                              }
                            },
                            "range": [
                              2457,
                              2463
                            ],
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 49
                              },
                              "end": {
                                "line": 90,
                                "column": 55
                              }
                            }
                          }
                        ],
                        "range": [
                          2423,
                          2464
                        ],
                        "loc": {
                          "start": {
                            "line": 90,
                            "column": 15
                          },
                          "end": {
                            "line": 90,
                            "column": 56
                          }
                        }
                      },
                      "range": [
                        2416,
                        2465
                      ],
                      "loc": {
                        "start": {
                          "line": 90,
                          "column": 8
                        },
                        "end": {
                          "line": 90,
                          "column": 57
                        }
                      }
                    }
                  ],
                  "range": [
                    2406,
                    2471
                  ],
                  "loc": {
                    "start": {
                      "line": 89,
                      "column": 25
                    },
                    "end": {
                      "line": 91,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  2394,
                  2471
                ],
                "loc": {
                  "start": {
                    "line": 89,
                    "column": 13
                  },
                  "end": {
                    "line": 91,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                2385,
                2471
              ],
              "loc": {
                "start": {
                  "line": 89,
                  "column": 4
                },
                "end": {
                  "line": 91,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "clone",
                "range": [
                  2477,
                  2482
                ],
                "loc": {
                  "start": {
                    "line": 92,
                    "column": 4
                  },
                  "end": {
                    "line": 92,
                    "column": 9
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "NewExpression",
                        "callee": {
                          "type": "Identifier",
                          "name": "Vector",
                          "range": [
                            2516,
                            2522
                          ],
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 19
                            },
                            "end": {
                              "line": 93,
                              "column": 25
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                2523,
                                2527
                              ],
                              "loc": {
                                "start": {
                                  "line": 93,
                                  "column": 26
                                },
                                "end": {
                                  "line": 93,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                2528,
                                2529
                              ],
                              "loc": {
                                "start": {
                                  "line": 93,
                                  "column": 31
                                },
                                "end": {
                                  "line": 93,
                                  "column": 32
                                }
                              }
                            },
                            "range": [
                              2523,
                              2529
                            ],
                            "loc": {
                              "start": {
                                "line": 93,
                                "column": 26
                              },
                              "end": {
                                "line": 93,
                                "column": 32
                              }
                            }
                          },
                          {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                2531,
                                2535
                              ],
                              "loc": {
                                "start": {
                                  "line": 93,
                                  "column": 34
                                },
                                "end": {
                                  "line": 93,
                                  "column": 38
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                2536,
                                2537
                              ],
                              "loc": {
                                "start": {
                                  "line": 93,
                                  "column": 39
                                },
                                "end": {
                                  "line": 93,
                                  "column": 40
                                }
                              }
                            },
                            "range": [
                              2531,
                              2537
                            ],
                            "loc": {
                              "start": {
                                "line": 93,
                                "column": 34
                              },
                              "end": {
                                "line": 93,
                                "column": 40
                              }
                            }
                          },
                          {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                2539,
                                2543
                              ],
                              "loc": {
                                "start": {
                                  "line": 93,
                                  "column": 42
                                },
                                "end": {
                                  "line": 93,
                                  "column": 46
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                2544,
                                2545
                              ],
                              "loc": {
                                "start": {
                                  "line": 93,
                                  "column": 47
                                },
                                "end": {
                                  "line": 93,
                                  "column": 48
                                }
                              }
                            },
                            "range": [
                              2539,
                              2545
                            ],
                            "loc": {
                              "start": {
                                "line": 93,
                                "column": 42
                              },
                              "end": {
                                "line": 93,
                                "column": 48
                              }
                            }
                          }
                        ],
                        "range": [
                          2512,
                          2546
                        ],
                        "loc": {
                          "start": {
                            "line": 93,
                            "column": 15
                          },
                          "end": {
                            "line": 93,
                            "column": 49
                          }
                        }
                      },
                      "range": [
                        2505,
                        2547
                      ],
                      "loc": {
                        "start": {
                          "line": 93,
                          "column": 8
                        },
                        "end": {
                          "line": 93,
                          "column": 50
                        }
                      }
                    }
                  ],
                  "range": [
                    2495,
                    2553
                  ],
                  "loc": {
                    "start": {
                      "line": 92,
                      "column": 22
                    },
                    "end": {
                      "line": 94,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  2484,
                  2553
                ],
                "loc": {
                  "start": {
                    "line": 92,
                    "column": 11
                  },
                  "end": {
                    "line": 94,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                2477,
                2553
              ],
              "loc": {
                "start": {
                  "line": 92,
                  "column": 4
                },
                "end": {
                  "line": 94,
                  "column": 5
                }
              }
            },
            {
              "type": "Property",
              "key": {
                "type": "Identifier",
                "name": "init",
                "range": [
                  2559,
                  2563
                ],
                "loc": {
                  "start": {
                    "line": 95,
                    "column": 4
                  },
                  "end": {
                    "line": 95,
                    "column": 8
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "x",
                    "range": [
                      2574,
                      2575
                    ],
                    "loc": {
                      "start": {
                        "line": 95,
                        "column": 19
                      },
                      "end": {
                        "line": 95,
                        "column": 20
                      }
                    }
                  },
                  {
                    "type": "Identifier",
                    "name": "y",
                    "range": [
                      2577,
                      2578
                    ],
                    "loc": {
                      "start": {
                        "line": 95,
                        "column": 22
                      },
                      "end": {
                        "line": 95,
                        "column": 23
                      }
                    }
                  },
                  {
                    "type": "Identifier",
                    "name": "z",
                    "range": [
                      2580,
                      2581
                    ],
                    "loc": {
                      "start": {
                        "line": 95,
                        "column": 25
                      },
                      "end": {
                        "line": 95,
                        "column": 26
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              2593,
                              2597
                            ],
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 8
                              },
                              "end": {
                                "line": 96,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              2598,
                              2599
                            ],
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 13
                              },
                              "end": {
                                "line": 96,
                                "column": 14
                              }
                            }
                          },
                          "range": [
                            2593,
                            2599
                          ],
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 8
                            },
                            "end": {
                              "line": 96,
                              "column": 14
                            }
                          }
                        },
                        "right": {
                          "type": "Identifier",
                          "name": "x",
                          "range": [
                            2602,
                            2603
                          ],
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 17
                            },
                            "end": {
                              "line": 96,
                              "column": 18
                            }
                          }
                        },
                        "range": [
                          2593,
                          2603
                        ],
                        "loc": {
                          "start": {
                            "line": 96,
                            "column": 8
                          },
                          "end": {
                            "line": 96,
                            "column": 18
                          }
                        }
                      },
                      "range": [
                        2593,
                        2604
                      ],
                      "loc": {
                        "start": {
                          "line": 96,
                          "column": 8
                        },
                        "end": {
                          "line": 96,
                          "column": 19
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              2605,
                              2609
                            ],
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 20
                              },
                              "end": {
                                "line": 96,
                                "column": 24
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              2610,
                              2611
                            ],
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 25
                              },
                              "end": {
                                "line": 96,
                                "column": 26
                              }
                            }
                          },
                          "range": [
                            2605,
                            2611
                          ],
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 20
                            },
                            "end": {
                              "line": 96,
                              "column": 26
                            }
                          }
                        },
                        "right": {
                          "type": "Identifier",
                          "name": "y",
                          "range": [
                            2614,
                            2615
                          ],
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 29
                            },
                            "end": {
                              "line": 96,
                              "column": 30
                            }
                          }
                        },
                        "range": [
                          2605,
                          2615
                        ],
                        "loc": {
                          "start": {
                            "line": 96,
                            "column": 20
                          },
                          "end": {
                            "line": 96,
                            "column": 30
                          }
                        }
                      },
                      "range": [
                        2605,
                        2616
                      ],
                      "loc": {
                        "start": {
                          "line": 96,
                          "column": 20
                        },
                        "end": {
                          "line": 96,
                          "column": 31
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              2617,
                              2621
                            ],
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 32
                              },
                              "end": {
                                "line": 96,
                                "column": 36
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              2622,
                              2623
                            ],
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 37
                              },
                              "end": {
                                "line": 96,
                                "column": 38
                              }
                            }
                          },
                          "range": [
                            2617,
                            2623
                          ],
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 32
                            },
                            "end": {
                              "line": 96,
                              "column": 38
                            }
                          }
                        },
                        "right": {
                          "type": "Identifier",
                          "name": "z",
                          "range": [
                            2626,
                            2627
                          ],
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 41
                            },
                            "end": {
                              "line": 96,
                              "column": 42
                            }
                          }
                        },
                        "range": [
                          2617,
                          2627
                        ],
                        "loc": {
                          "start": {
                            "line": 96,
                            "column": 32
                          },
                          "end": {
                            "line": 96,
                            "column": 42
                          }
                        }
                      },
                      "range": [
                        2617,
                        2628
                      ],
                      "loc": {
                        "start": {
                          "line": 96,
                          "column": 32
                        },
                        "end": {
                          "line": 96,
                          "column": 43
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "ThisExpression",
                        "range": [
                          2644,
                          2648
                        ],
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 15
                          },
                          "end": {
                            "line": 97,
                            "column": 19
                          }
                        }
                      },
                      "range": [
                        2637,
                        2649
                      ],
                      "loc": {
                        "start": {
                          "line": 97,
                          "column": 8
                        },
                        "end": {
                          "line": 97,
                          "column": 20
                        }
                      }
                    }
                  ],
                  "range": [
                    2583,
                    2655
                  ],
                  "loc": {
                    "start": {
                      "line": 95,
                      "column": 28
                    },
                    "end": {
                      "line": 98,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  2565,
                  2655
                ],
                "loc": {
                  "start": {
                    "line": 95,
                    "column": 10
                  },
                  "end": {
                    "line": 98,
                    "column": 5
                  }
                }
              },
              "kind": "init",
              "method": false,
              "shorthand": false,
              "computed": false,
              "range": [
                2559,
                2655
              ],
              "loc": {
                "start": {
                  "line": 95,
                  "column": 4
                },
                "end": {
                  "line": 98,
                  "column": 5
                }
              }
            }
          ],
          "range": [
            246,
            2657
          ],
          "loc": {
            "start": {
              "line": 19,
              "column": 19
            },
            "end": {
              "line": 99,
              "column": 1
            }
          }
        },
        "range": [
          227,
          2657
        ],
        "loc": {
          "start": {
            "line": 19,
            "column": 0
          },
          "end": {
            "line": 99,
            "column": 1
          }
        }
      },
      "range": [
        227,
        2658
      ],
      "loc": {
        "start": {
          "line": 19,
          "column": 0
        },
        "end": {
          "line": 99,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              2661,
              2667
            ],
            "loc": {
              "start": {
                "line": 102,
                "column": 0
              },
              "end": {
                "line": 102,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "negative",
            "range": [
              2668,
              2676
            ],
            "loc": {
              "start": {
                "line": 102,
                "column": 7
              },
              "end": {
                "line": 102,
                "column": 15
              }
            }
          },
          "range": [
            2661,
            2676
          ],
          "loc": {
            "start": {
              "line": 102,
              "column": 0
            },
            "end": {
              "line": 102,
              "column": 15
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "negative",
            "range": [
              2668,
              2676
            ],
            "loc": {
              "start": {
                "line": 102,
                "column": 7
              },
              "end": {
                "line": 102,
                "column": 15
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                2688,
                2689
              ],
              "loc": {
                "start": {
                  "line": 102,
                  "column": 27
                },
                "end": {
                  "line": 102,
                  "column": 28
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                2691,
                2692
              ],
              "loc": {
                "start": {
                  "line": 102,
                  "column": 30
                },
                "end": {
                  "line": 102,
                  "column": 31
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "ExpressionStatement",
                "expression": {
                  "type": "AssignmentExpression",
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "b",
                      "range": [
                        2700,
                        2701
                      ],
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 4
                        },
                        "end": {
                          "line": 103,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "x",
                      "range": [
                        2702,
                        2703
                      ],
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 6
                        },
                        "end": {
                          "line": 103,
                          "column": 7
                        }
                      }
                    },
                    "range": [
                      2700,
                      2703
                    ],
                    "loc": {
                      "start": {
                        "line": 103,
                        "column": 4
                      },
                      "end": {
                        "line": 103,
                        "column": 7
                      }
                    }
                  },
                  "right": {
                    "type": "UnaryExpression",
                    "operator": "-",
                    "argument": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "Identifier",
                        "name": "a",
                        "range": [
                          2707,
                          2708
                        ],
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 11
                          },
                          "end": {
                            "line": 103,
                            "column": 12
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "x",
                        "range": [
                          2709,
                          2710
                        ],
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 13
                          },
                          "end": {
                            "line": 103,
                            "column": 14
                          }
                        }
                      },
                      "range": [
                        2707,
                        2710
                      ],
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 11
                        },
                        "end": {
                          "line": 103,
                          "column": 14
                        }
                      }
                    },
                    "prefix": true,
                    "range": [
                      2706,
                      2710
                    ],
                    "loc": {
                      "start": {
                        "line": 103,
                        "column": 10
                      },
                      "end": {
                        "line": 103,
                        "column": 14
                      }
                    }
                  },
                  "range": [
                    2700,
                    2710
                  ],
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 4
                    },
                    "end": {
                      "line": 103,
                      "column": 14
                    }
                  }
                },
                "range": [
                  2700,
                  2711
                ],
                "loc": {
                  "start": {
                    "line": 103,
                    "column": 4
                  },
                  "end": {
                    "line": 103,
                    "column": 15
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "expression": {
                  "type": "AssignmentExpression",
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "b",
                      "range": [
                        2712,
                        2713
                      ],
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 16
                        },
                        "end": {
                          "line": 103,
                          "column": 17
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "y",
                      "range": [
                        2714,
                        2715
                      ],
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 18
                        },
                        "end": {
                          "line": 103,
                          "column": 19
                        }
                      }
                    },
                    "range": [
                      2712,
                      2715
                    ],
                    "loc": {
                      "start": {
                        "line": 103,
                        "column": 16
                      },
                      "end": {
                        "line": 103,
                        "column": 19
                      }
                    }
                  },
                  "right": {
                    "type": "UnaryExpression",
                    "operator": "-",
                    "argument": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "Identifier",
                        "name": "a",
                        "range": [
                          2719,
                          2720
                        ],
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 23
                          },
                          "end": {
                            "line": 103,
                            "column": 24
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "y",
                        "range": [
                          2721,
                          2722
                        ],
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 25
                          },
                          "end": {
                            "line": 103,
                            "column": 26
                          }
                        }
                      },
                      "range": [
                        2719,
                        2722
                      ],
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 23
                        },
                        "end": {
                          "line": 103,
                          "column": 26
                        }
                      }
                    },
                    "prefix": true,
                    "range": [
                      2718,
                      2722
                    ],
                    "loc": {
                      "start": {
                        "line": 103,
                        "column": 22
                      },
                      "end": {
                        "line": 103,
                        "column": 26
                      }
                    }
                  },
                  "range": [
                    2712,
                    2722
                  ],
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 16
                    },
                    "end": {
                      "line": 103,
                      "column": 26
                    }
                  }
                },
                "range": [
                  2712,
                  2723
                ],
                "loc": {
                  "start": {
                    "line": 103,
                    "column": 16
                  },
                  "end": {
                    "line": 103,
                    "column": 27
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "expression": {
                  "type": "AssignmentExpression",
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "b",
                      "range": [
                        2724,
                        2725
                      ],
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 28
                        },
                        "end": {
                          "line": 103,
                          "column": 29
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "z",
                      "range": [
                        2726,
                        2727
                      ],
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 30
                        },
                        "end": {
                          "line": 103,
                          "column": 31
                        }
                      }
                    },
                    "range": [
                      2724,
                      2727
                    ],
                    "loc": {
                      "start": {
                        "line": 103,
                        "column": 28
                      },
                      "end": {
                        "line": 103,
                        "column": 31
                      }
                    }
                  },
                  "right": {
                    "type": "UnaryExpression",
                    "operator": "-",
                    "argument": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "Identifier",
                        "name": "a",
                        "range": [
                          2731,
                          2732
                        ],
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 35
                          },
                          "end": {
                            "line": 103,
                            "column": 36
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "z",
                        "range": [
                          2733,
                          2734
                        ],
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 37
                          },
                          "end": {
                            "line": 103,
                            "column": 38
                          }
                        }
                      },
                      "range": [
                        2731,
                        2734
                      ],
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 35
                        },
                        "end": {
                          "line": 103,
                          "column": 38
                        }
                      }
                    },
                    "prefix": true,
                    "range": [
                      2730,
                      2734
                    ],
                    "loc": {
                      "start": {
                        "line": 103,
                        "column": 34
                      },
                      "end": {
                        "line": 103,
                        "column": 38
                      }
                    }
                  },
                  "range": [
                    2724,
                    2734
                  ],
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 28
                    },
                    "end": {
                      "line": 103,
                      "column": 38
                    }
                  }
                },
                "range": [
                  2724,
                  2735
                ],
                "loc": {
                  "start": {
                    "line": 103,
                    "column": 28
                  },
                  "end": {
                    "line": 103,
                    "column": 39
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "Identifier",
                  "name": "b",
                  "range": [
                    2747,
                    2748
                  ],
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 11
                    },
                    "end": {
                      "line": 104,
                      "column": 12
                    }
                  }
                },
                "range": [
                  2740,
                  2749
                ],
                "loc": {
                  "start": {
                    "line": 104,
                    "column": 4
                  },
                  "end": {
                    "line": 104,
                    "column": 13
                  }
                }
              }
            ],
            "range": [
              2694,
              2751
            ],
            "loc": {
              "start": {
                "line": 102,
                "column": 33
              },
              "end": {
                "line": 105,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            2679,
            2751
          ],
          "loc": {
            "start": {
              "line": 102,
              "column": 18
            },
            "end": {
              "line": 105,
              "column": 1
            }
          }
        },
        "range": [
          2661,
          2751
        ],
        "loc": {
          "start": {
            "line": 102,
            "column": 0
          },
          "end": {
            "line": 105,
            "column": 1
          }
        }
      },
      "range": [
        2661,
        2752
      ],
      "loc": {
        "start": {
          "line": 102,
          "column": 0
        },
        "end": {
          "line": 105,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              2753,
              2759
            ],
            "loc": {
              "start": {
                "line": 106,
                "column": 0
              },
              "end": {
                "line": 106,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "add",
            "range": [
              2760,
              2763
            ],
            "loc": {
              "start": {
                "line": 106,
                "column": 7
              },
              "end": {
                "line": 106,
                "column": 10
              }
            }
          },
          "range": [
            2753,
            2763
          ],
          "loc": {
            "start": {
              "line": 106,
              "column": 0
            },
            "end": {
              "line": 106,
              "column": 10
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "add",
            "range": [
              2760,
              2763
            ],
            "loc": {
              "start": {
                "line": 106,
                "column": 7
              },
              "end": {
                "line": 106,
                "column": 10
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                2775,
                2776
              ],
              "loc": {
                "start": {
                  "line": 106,
                  "column": 22
                },
                "end": {
                  "line": 106,
                  "column": 23
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                2778,
                2779
              ],
              "loc": {
                "start": {
                  "line": 106,
                  "column": 25
                },
                "end": {
                  "line": 106,
                  "column": 26
                }
              }
            },
            {
              "type": "Identifier",
              "name": "c",
              "range": [
                2781,
                2782
              ],
              "loc": {
                "start": {
                  "line": 106,
                  "column": 28
                },
                "end": {
                  "line": 106,
                  "column": 29
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "IfStatement",
                "test": {
                  "type": "BinaryExpression",
                  "operator": "instanceof",
                  "left": {
                    "type": "Identifier",
                    "name": "b",
                    "range": [
                      2794,
                      2795
                    ],
                    "loc": {
                      "start": {
                        "line": 107,
                        "column": 8
                      },
                      "end": {
                        "line": 107,
                        "column": 9
                      }
                    }
                  },
                  "right": {
                    "type": "Identifier",
                    "name": "Vector",
                    "range": [
                      2807,
                      2813
                    ],
                    "loc": {
                      "start": {
                        "line": 107,
                        "column": 21
                      },
                      "end": {
                        "line": 107,
                        "column": 27
                      }
                    }
                  },
                  "range": [
                    2794,
                    2813
                  ],
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 8
                    },
                    "end": {
                      "line": 107,
                      "column": 27
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              2817,
                              2818
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 31
                              },
                              "end": {
                                "line": 107,
                                "column": 32
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              2819,
                              2820
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 33
                              },
                              "end": {
                                "line": 107,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            2817,
                            2820
                          ],
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 31
                            },
                            "end": {
                              "line": 107,
                              "column": 34
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "+",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                2823,
                                2824
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 37
                                },
                                "end": {
                                  "line": 107,
                                  "column": 38
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                2825,
                                2826
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 39
                                },
                                "end": {
                                  "line": 107,
                                  "column": 40
                                }
                              }
                            },
                            "range": [
                              2823,
                              2826
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 37
                              },
                              "end": {
                                "line": 107,
                                "column": 40
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                2829,
                                2830
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 43
                                },
                                "end": {
                                  "line": 107,
                                  "column": 44
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                2831,
                                2832
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 45
                                },
                                "end": {
                                  "line": 107,
                                  "column": 46
                                }
                              }
                            },
                            "range": [
                              2829,
                              2832
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 43
                              },
                              "end": {
                                "line": 107,
                                "column": 46
                              }
                            }
                          },
                          "range": [
                            2823,
                            2832
                          ],
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 37
                            },
                            "end": {
                              "line": 107,
                              "column": 46
                            }
                          }
                        },
                        "range": [
                          2817,
                          2832
                        ],
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 31
                          },
                          "end": {
                            "line": 107,
                            "column": 46
                          }
                        }
                      },
                      "range": [
                        2817,
                        2833
                      ],
                      "loc": {
                        "start": {
                          "line": 107,
                          "column": 31
                        },
                        "end": {
                          "line": 107,
                          "column": 47
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              2834,
                              2835
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 48
                              },
                              "end": {
                                "line": 107,
                                "column": 49
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              2836,
                              2837
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 50
                              },
                              "end": {
                                "line": 107,
                                "column": 51
                              }
                            }
                          },
                          "range": [
                            2834,
                            2837
                          ],
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 48
                            },
                            "end": {
                              "line": 107,
                              "column": 51
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "+",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                2840,
                                2841
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 54
                                },
                                "end": {
                                  "line": 107,
                                  "column": 55
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                2842,
                                2843
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 56
                                },
                                "end": {
                                  "line": 107,
                                  "column": 57
                                }
                              }
                            },
                            "range": [
                              2840,
                              2843
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 54
                              },
                              "end": {
                                "line": 107,
                                "column": 57
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                2846,
                                2847
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 60
                                },
                                "end": {
                                  "line": 107,
                                  "column": 61
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                2848,
                                2849
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 62
                                },
                                "end": {
                                  "line": 107,
                                  "column": 63
                                }
                              }
                            },
                            "range": [
                              2846,
                              2849
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 60
                              },
                              "end": {
                                "line": 107,
                                "column": 63
                              }
                            }
                          },
                          "range": [
                            2840,
                            2849
                          ],
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 54
                            },
                            "end": {
                              "line": 107,
                              "column": 63
                            }
                          }
                        },
                        "range": [
                          2834,
                          2849
                        ],
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 48
                          },
                          "end": {
                            "line": 107,
                            "column": 63
                          }
                        }
                      },
                      "range": [
                        2834,
                        2850
                      ],
                      "loc": {
                        "start": {
                          "line": 107,
                          "column": 48
                        },
                        "end": {
                          "line": 107,
                          "column": 64
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              2851,
                              2852
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 65
                              },
                              "end": {
                                "line": 107,
                                "column": 66
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              2853,
                              2854
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 67
                              },
                              "end": {
                                "line": 107,
                                "column": 68
                              }
                            }
                          },
                          "range": [
                            2851,
                            2854
                          ],
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 65
                            },
                            "end": {
                              "line": 107,
                              "column": 68
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "+",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                2857,
                                2858
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 71
                                },
                                "end": {
                                  "line": 107,
                                  "column": 72
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                2859,
                                2860
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 73
                                },
                                "end": {
                                  "line": 107,
                                  "column": 74
                                }
                              }
                            },
                            "range": [
                              2857,
                              2860
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 71
                              },
                              "end": {
                                "line": 107,
                                "column": 74
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                2863,
                                2864
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 77
                                },
                                "end": {
                                  "line": 107,
                                  "column": 78
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                2865,
                                2866
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 79
                                },
                                "end": {
                                  "line": 107,
                                  "column": 80
                                }
                              }
                            },
                            "range": [
                              2863,
                              2866
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 77
                              },
                              "end": {
                                "line": 107,
                                "column": 80
                              }
                            }
                          },
                          "range": [
                            2857,
                            2866
                          ],
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 71
                            },
                            "end": {
                              "line": 107,
                              "column": 80
                            }
                          }
                        },
                        "range": [
                          2851,
                          2866
                        ],
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 65
                          },
                          "end": {
                            "line": 107,
                            "column": 80
                          }
                        }
                      },
                      "range": [
                        2851,
                        2867
                      ],
                      "loc": {
                        "start": {
                          "line": 107,
                          "column": 65
                        },
                        "end": {
                          "line": 107,
                          "column": 81
                        }
                      }
                    }
                  ],
                  "range": [
                    2815,
                    2869
                  ],
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 29
                    },
                    "end": {
                      "line": 107,
                      "column": 83
                    }
                  }
                },
                "alternate": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              2881,
                              2882
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 11
                              },
                              "end": {
                                "line": 108,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              2883,
                              2884
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 13
                              },
                              "end": {
                                "line": 108,
                                "column": 14
                              }
                            }
                          },
                          "range": [
                            2881,
                            2884
                          ],
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 11
                            },
                            "end": {
                              "line": 108,
                              "column": 14
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "+",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                2887,
                                2888
                              ],
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 17
                                },
                                "end": {
                                  "line": 108,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                2889,
                                2890
                              ],
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 19
                                },
                                "end": {
                                  "line": 108,
                                  "column": 20
                                }
                              }
                            },
                            "range": [
                              2887,
                              2890
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 17
                              },
                              "end": {
                                "line": 108,
                                "column": 20
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              2893,
                              2894
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 23
                              },
                              "end": {
                                "line": 108,
                                "column": 24
                              }
                            }
                          },
                          "range": [
                            2887,
                            2894
                          ],
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 17
                            },
                            "end": {
                              "line": 108,
                              "column": 24
                            }
                          }
                        },
                        "range": [
                          2881,
                          2894
                        ],
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 11
                          },
                          "end": {
                            "line": 108,
                            "column": 24
                          }
                        }
                      },
                      "range": [
                        2881,
                        2895
                      ],
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 11
                        },
                        "end": {
                          "line": 108,
                          "column": 25
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              2896,
                              2897
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 26
                              },
                              "end": {
                                "line": 108,
                                "column": 27
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              2898,
                              2899
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 28
                              },
                              "end": {
                                "line": 108,
                                "column": 29
                              }
                            }
                          },
                          "range": [
                            2896,
                            2899
                          ],
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 26
                            },
                            "end": {
                              "line": 108,
                              "column": 29
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "+",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                2902,
                                2903
                              ],
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 32
                                },
                                "end": {
                                  "line": 108,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                2904,
                                2905
                              ],
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 34
                                },
                                "end": {
                                  "line": 108,
                                  "column": 35
                                }
                              }
                            },
                            "range": [
                              2902,
                              2905
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 32
                              },
                              "end": {
                                "line": 108,
                                "column": 35
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              2908,
                              2909
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 38
                              },
                              "end": {
                                "line": 108,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            2902,
                            2909
                          ],
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 32
                            },
                            "end": {
                              "line": 108,
                              "column": 39
                            }
                          }
                        },
                        "range": [
                          2896,
                          2909
                        ],
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 26
                          },
                          "end": {
                            "line": 108,
                            "column": 39
                          }
                        }
                      },
                      "range": [
                        2896,
                        2910
                      ],
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 26
                        },
                        "end": {
                          "line": 108,
                          "column": 40
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              2911,
                              2912
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 41
                              },
                              "end": {
                                "line": 108,
                                "column": 42
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              2913,
                              2914
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 43
                              },
                              "end": {
                                "line": 108,
                                "column": 44
                              }
                            }
                          },
                          "range": [
                            2911,
                            2914
                          ],
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 41
                            },
                            "end": {
                              "line": 108,
                              "column": 44
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "+",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                2917,
                                2918
                              ],
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 47
                                },
                                "end": {
                                  "line": 108,
                                  "column": 48
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                2919,
                                2920
                              ],
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 49
                                },
                                "end": {
                                  "line": 108,
                                  "column": 50
                                }
                              }
                            },
                            "range": [
                              2917,
                              2920
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 47
                              },
                              "end": {
                                "line": 108,
                                "column": 50
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              2923,
                              2924
                            ],
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 53
                              },
                              "end": {
                                "line": 108,
                                "column": 54
                              }
                            }
                          },
                          "range": [
                            2917,
                            2924
                          ],
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 47
                            },
                            "end": {
                              "line": 108,
                              "column": 54
                            }
                          }
                        },
                        "range": [
                          2911,
                          2924
                        ],
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 41
                          },
                          "end": {
                            "line": 108,
                            "column": 54
                          }
                        }
                      },
                      "range": [
                        2911,
                        2925
                      ],
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 41
                        },
                        "end": {
                          "line": 108,
                          "column": 55
                        }
                      }
                    }
                  ],
                  "range": [
                    2879,
                    2927
                  ],
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 9
                    },
                    "end": {
                      "line": 108,
                      "column": 57
                    }
                  }
                },
                "range": [
                  2790,
                  2927
                ],
                "loc": {
                  "start": {
                    "line": 107,
                    "column": 4
                  },
                  "end": {
                    "line": 108,
                    "column": 57
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "Identifier",
                  "name": "c",
                  "range": [
                    2939,
                    2940
                  ],
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 11
                    },
                    "end": {
                      "line": 109,
                      "column": 12
                    }
                  }
                },
                "range": [
                  2932,
                  2941
                ],
                "loc": {
                  "start": {
                    "line": 109,
                    "column": 4
                  },
                  "end": {
                    "line": 109,
                    "column": 13
                  }
                }
              }
            ],
            "range": [
              2784,
              2943
            ],
            "loc": {
              "start": {
                "line": 106,
                "column": 31
              },
              "end": {
                "line": 110,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            2766,
            2943
          ],
          "loc": {
            "start": {
              "line": 106,
              "column": 13
            },
            "end": {
              "line": 110,
              "column": 1
            }
          }
        },
        "range": [
          2753,
          2943
        ],
        "loc": {
          "start": {
            "line": 106,
            "column": 0
          },
          "end": {
            "line": 110,
            "column": 1
          }
        }
      },
      "range": [
        2753,
        2944
      ],
      "loc": {
        "start": {
          "line": 106,
          "column": 0
        },
        "end": {
          "line": 110,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              2945,
              2951
            ],
            "loc": {
              "start": {
                "line": 111,
                "column": 0
              },
              "end": {
                "line": 111,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "subtract",
            "range": [
              2952,
              2960
            ],
            "loc": {
              "start": {
                "line": 111,
                "column": 7
              },
              "end": {
                "line": 111,
                "column": 15
              }
            }
          },
          "range": [
            2945,
            2960
          ],
          "loc": {
            "start": {
              "line": 111,
              "column": 0
            },
            "end": {
              "line": 111,
              "column": 15
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "subtract",
            "range": [
              2952,
              2960
            ],
            "loc": {
              "start": {
                "line": 111,
                "column": 7
              },
              "end": {
                "line": 111,
                "column": 15
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                2972,
                2973
              ],
              "loc": {
                "start": {
                  "line": 111,
                  "column": 27
                },
                "end": {
                  "line": 111,
                  "column": 28
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                2975,
                2976
              ],
              "loc": {
                "start": {
                  "line": 111,
                  "column": 30
                },
                "end": {
                  "line": 111,
                  "column": 31
                }
              }
            },
            {
              "type": "Identifier",
              "name": "c",
              "range": [
                2978,
                2979
              ],
              "loc": {
                "start": {
                  "line": 111,
                  "column": 33
                },
                "end": {
                  "line": 111,
                  "column": 34
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "IfStatement",
                "test": {
                  "type": "BinaryExpression",
                  "operator": "instanceof",
                  "left": {
                    "type": "Identifier",
                    "name": "b",
                    "range": [
                      2991,
                      2992
                    ],
                    "loc": {
                      "start": {
                        "line": 112,
                        "column": 8
                      },
                      "end": {
                        "line": 112,
                        "column": 9
                      }
                    }
                  },
                  "right": {
                    "type": "Identifier",
                    "name": "Vector",
                    "range": [
                      3004,
                      3010
                    ],
                    "loc": {
                      "start": {
                        "line": 112,
                        "column": 21
                      },
                      "end": {
                        "line": 112,
                        "column": 27
                      }
                    }
                  },
                  "range": [
                    2991,
                    3010
                  ],
                  "loc": {
                    "start": {
                      "line": 112,
                      "column": 8
                    },
                    "end": {
                      "line": 112,
                      "column": 27
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3014,
                              3015
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 31
                              },
                              "end": {
                                "line": 112,
                                "column": 32
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              3016,
                              3017
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 33
                              },
                              "end": {
                                "line": 112,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            3014,
                            3017
                          ],
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 31
                            },
                            "end": {
                              "line": 112,
                              "column": 34
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "-",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3020,
                                3021
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 37
                                },
                                "end": {
                                  "line": 112,
                                  "column": 38
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                3022,
                                3023
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 39
                                },
                                "end": {
                                  "line": 112,
                                  "column": 40
                                }
                              }
                            },
                            "range": [
                              3020,
                              3023
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 37
                              },
                              "end": {
                                "line": 112,
                                "column": 40
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                3026,
                                3027
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 43
                                },
                                "end": {
                                  "line": 112,
                                  "column": 44
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                3028,
                                3029
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 45
                                },
                                "end": {
                                  "line": 112,
                                  "column": 46
                                }
                              }
                            },
                            "range": [
                              3026,
                              3029
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 43
                              },
                              "end": {
                                "line": 112,
                                "column": 46
                              }
                            }
                          },
                          "range": [
                            3020,
                            3029
                          ],
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 37
                            },
                            "end": {
                              "line": 112,
                              "column": 46
                            }
                          }
                        },
                        "range": [
                          3014,
                          3029
                        ],
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 31
                          },
                          "end": {
                            "line": 112,
                            "column": 46
                          }
                        }
                      },
                      "range": [
                        3014,
                        3030
                      ],
                      "loc": {
                        "start": {
                          "line": 112,
                          "column": 31
                        },
                        "end": {
                          "line": 112,
                          "column": 47
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3031,
                              3032
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 48
                              },
                              "end": {
                                "line": 112,
                                "column": 49
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              3033,
                              3034
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 50
                              },
                              "end": {
                                "line": 112,
                                "column": 51
                              }
                            }
                          },
                          "range": [
                            3031,
                            3034
                          ],
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 48
                            },
                            "end": {
                              "line": 112,
                              "column": 51
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "-",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3037,
                                3038
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 54
                                },
                                "end": {
                                  "line": 112,
                                  "column": 55
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                3039,
                                3040
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 56
                                },
                                "end": {
                                  "line": 112,
                                  "column": 57
                                }
                              }
                            },
                            "range": [
                              3037,
                              3040
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 54
                              },
                              "end": {
                                "line": 112,
                                "column": 57
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                3043,
                                3044
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 60
                                },
                                "end": {
                                  "line": 112,
                                  "column": 61
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                3045,
                                3046
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 62
                                },
                                "end": {
                                  "line": 112,
                                  "column": 63
                                }
                              }
                            },
                            "range": [
                              3043,
                              3046
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 60
                              },
                              "end": {
                                "line": 112,
                                "column": 63
                              }
                            }
                          },
                          "range": [
                            3037,
                            3046
                          ],
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 54
                            },
                            "end": {
                              "line": 112,
                              "column": 63
                            }
                          }
                        },
                        "range": [
                          3031,
                          3046
                        ],
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 48
                          },
                          "end": {
                            "line": 112,
                            "column": 63
                          }
                        }
                      },
                      "range": [
                        3031,
                        3047
                      ],
                      "loc": {
                        "start": {
                          "line": 112,
                          "column": 48
                        },
                        "end": {
                          "line": 112,
                          "column": 64
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3048,
                              3049
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 65
                              },
                              "end": {
                                "line": 112,
                                "column": 66
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              3050,
                              3051
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 67
                              },
                              "end": {
                                "line": 112,
                                "column": 68
                              }
                            }
                          },
                          "range": [
                            3048,
                            3051
                          ],
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 65
                            },
                            "end": {
                              "line": 112,
                              "column": 68
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "-",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3054,
                                3055
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 71
                                },
                                "end": {
                                  "line": 112,
                                  "column": 72
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                3056,
                                3057
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 73
                                },
                                "end": {
                                  "line": 112,
                                  "column": 74
                                }
                              }
                            },
                            "range": [
                              3054,
                              3057
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 71
                              },
                              "end": {
                                "line": 112,
                                "column": 74
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                3060,
                                3061
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 77
                                },
                                "end": {
                                  "line": 112,
                                  "column": 78
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                3062,
                                3063
                              ],
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 79
                                },
                                "end": {
                                  "line": 112,
                                  "column": 80
                                }
                              }
                            },
                            "range": [
                              3060,
                              3063
                            ],
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 77
                              },
                              "end": {
                                "line": 112,
                                "column": 80
                              }
                            }
                          },
                          "range": [
                            3054,
                            3063
                          ],
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 71
                            },
                            "end": {
                              "line": 112,
                              "column": 80
                            }
                          }
                        },
                        "range": [
                          3048,
                          3063
                        ],
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 65
                          },
                          "end": {
                            "line": 112,
                            "column": 80
                          }
                        }
                      },
                      "range": [
                        3048,
                        3064
                      ],
                      "loc": {
                        "start": {
                          "line": 112,
                          "column": 65
                        },
                        "end": {
                          "line": 112,
                          "column": 81
                        }
                      }
                    }
                  ],
                  "range": [
                    3012,
                    3066
                  ],
                  "loc": {
                    "start": {
                      "line": 112,
                      "column": 29
                    },
                    "end": {
                      "line": 112,
                      "column": 83
                    }
                  }
                },
                "alternate": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3078,
                              3079
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 11
                              },
                              "end": {
                                "line": 113,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              3080,
                              3081
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 13
                              },
                              "end": {
                                "line": 113,
                                "column": 14
                              }
                            }
                          },
                          "range": [
                            3078,
                            3081
                          ],
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 11
                            },
                            "end": {
                              "line": 113,
                              "column": 14
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "-",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3084,
                                3085
                              ],
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 17
                                },
                                "end": {
                                  "line": 113,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                3086,
                                3087
                              ],
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 19
                                },
                                "end": {
                                  "line": 113,
                                  "column": 20
                                }
                              }
                            },
                            "range": [
                              3084,
                              3087
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 17
                              },
                              "end": {
                                "line": 113,
                                "column": 20
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              3090,
                              3091
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 23
                              },
                              "end": {
                                "line": 113,
                                "column": 24
                              }
                            }
                          },
                          "range": [
                            3084,
                            3091
                          ],
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 17
                            },
                            "end": {
                              "line": 113,
                              "column": 24
                            }
                          }
                        },
                        "range": [
                          3078,
                          3091
                        ],
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 11
                          },
                          "end": {
                            "line": 113,
                            "column": 24
                          }
                        }
                      },
                      "range": [
                        3078,
                        3092
                      ],
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 11
                        },
                        "end": {
                          "line": 113,
                          "column": 25
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3093,
                              3094
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 26
                              },
                              "end": {
                                "line": 113,
                                "column": 27
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              3095,
                              3096
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 28
                              },
                              "end": {
                                "line": 113,
                                "column": 29
                              }
                            }
                          },
                          "range": [
                            3093,
                            3096
                          ],
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 26
                            },
                            "end": {
                              "line": 113,
                              "column": 29
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "-",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3099,
                                3100
                              ],
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 32
                                },
                                "end": {
                                  "line": 113,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                3101,
                                3102
                              ],
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 34
                                },
                                "end": {
                                  "line": 113,
                                  "column": 35
                                }
                              }
                            },
                            "range": [
                              3099,
                              3102
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 32
                              },
                              "end": {
                                "line": 113,
                                "column": 35
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              3105,
                              3106
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 38
                              },
                              "end": {
                                "line": 113,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            3099,
                            3106
                          ],
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 32
                            },
                            "end": {
                              "line": 113,
                              "column": 39
                            }
                          }
                        },
                        "range": [
                          3093,
                          3106
                        ],
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 26
                          },
                          "end": {
                            "line": 113,
                            "column": 39
                          }
                        }
                      },
                      "range": [
                        3093,
                        3107
                      ],
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 26
                        },
                        "end": {
                          "line": 113,
                          "column": 40
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3108,
                              3109
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 41
                              },
                              "end": {
                                "line": 113,
                                "column": 42
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              3110,
                              3111
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 43
                              },
                              "end": {
                                "line": 113,
                                "column": 44
                              }
                            }
                          },
                          "range": [
                            3108,
                            3111
                          ],
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 41
                            },
                            "end": {
                              "line": 113,
                              "column": 44
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "-",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3114,
                                3115
                              ],
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 47
                                },
                                "end": {
                                  "line": 113,
                                  "column": 48
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                3116,
                                3117
                              ],
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 49
                                },
                                "end": {
                                  "line": 113,
                                  "column": 50
                                }
                              }
                            },
                            "range": [
                              3114,
                              3117
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 47
                              },
                              "end": {
                                "line": 113,
                                "column": 50
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              3120,
                              3121
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 53
                              },
                              "end": {
                                "line": 113,
                                "column": 54
                              }
                            }
                          },
                          "range": [
                            3114,
                            3121
                          ],
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 47
                            },
                            "end": {
                              "line": 113,
                              "column": 54
                            }
                          }
                        },
                        "range": [
                          3108,
                          3121
                        ],
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 41
                          },
                          "end": {
                            "line": 113,
                            "column": 54
                          }
                        }
                      },
                      "range": [
                        3108,
                        3122
                      ],
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 41
                        },
                        "end": {
                          "line": 113,
                          "column": 55
                        }
                      }
                    }
                  ],
                  "range": [
                    3076,
                    3124
                  ],
                  "loc": {
                    "start": {
                      "line": 113,
                      "column": 9
                    },
                    "end": {
                      "line": 113,
                      "column": 57
                    }
                  }
                },
                "range": [
                  2987,
                  3124
                ],
                "loc": {
                  "start": {
                    "line": 112,
                    "column": 4
                  },
                  "end": {
                    "line": 113,
                    "column": 57
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "Identifier",
                  "name": "c",
                  "range": [
                    3136,
                    3137
                  ],
                  "loc": {
                    "start": {
                      "line": 114,
                      "column": 11
                    },
                    "end": {
                      "line": 114,
                      "column": 12
                    }
                  }
                },
                "range": [
                  3129,
                  3138
                ],
                "loc": {
                  "start": {
                    "line": 114,
                    "column": 4
                  },
                  "end": {
                    "line": 114,
                    "column": 13
                  }
                }
              }
            ],
            "range": [
              2981,
              3140
            ],
            "loc": {
              "start": {
                "line": 111,
                "column": 36
              },
              "end": {
                "line": 115,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            2963,
            3140
          ],
          "loc": {
            "start": {
              "line": 111,
              "column": 18
            },
            "end": {
              "line": 115,
              "column": 1
            }
          }
        },
        "range": [
          2945,
          3140
        ],
        "loc": {
          "start": {
            "line": 111,
            "column": 0
          },
          "end": {
            "line": 115,
            "column": 1
          }
        }
      },
      "range": [
        2945,
        3141
      ],
      "loc": {
        "start": {
          "line": 111,
          "column": 0
        },
        "end": {
          "line": 115,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              3142,
              3148
            ],
            "loc": {
              "start": {
                "line": 116,
                "column": 0
              },
              "end": {
                "line": 116,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "multiply",
            "range": [
              3149,
              3157
            ],
            "loc": {
              "start": {
                "line": 116,
                "column": 7
              },
              "end": {
                "line": 116,
                "column": 15
              }
            }
          },
          "range": [
            3142,
            3157
          ],
          "loc": {
            "start": {
              "line": 116,
              "column": 0
            },
            "end": {
              "line": 116,
              "column": 15
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "multiply",
            "range": [
              3149,
              3157
            ],
            "loc": {
              "start": {
                "line": 116,
                "column": 7
              },
              "end": {
                "line": 116,
                "column": 15
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                3169,
                3170
              ],
              "loc": {
                "start": {
                  "line": 116,
                  "column": 27
                },
                "end": {
                  "line": 116,
                  "column": 28
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                3172,
                3173
              ],
              "loc": {
                "start": {
                  "line": 116,
                  "column": 30
                },
                "end": {
                  "line": 116,
                  "column": 31
                }
              }
            },
            {
              "type": "Identifier",
              "name": "c",
              "range": [
                3175,
                3176
              ],
              "loc": {
                "start": {
                  "line": 116,
                  "column": 33
                },
                "end": {
                  "line": 116,
                  "column": 34
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "IfStatement",
                "test": {
                  "type": "BinaryExpression",
                  "operator": "instanceof",
                  "left": {
                    "type": "Identifier",
                    "name": "b",
                    "range": [
                      3188,
                      3189
                    ],
                    "loc": {
                      "start": {
                        "line": 117,
                        "column": 8
                      },
                      "end": {
                        "line": 117,
                        "column": 9
                      }
                    }
                  },
                  "right": {
                    "type": "Identifier",
                    "name": "Vector",
                    "range": [
                      3201,
                      3207
                    ],
                    "loc": {
                      "start": {
                        "line": 117,
                        "column": 21
                      },
                      "end": {
                        "line": 117,
                        "column": 27
                      }
                    }
                  },
                  "range": [
                    3188,
                    3207
                  ],
                  "loc": {
                    "start": {
                      "line": 117,
                      "column": 8
                    },
                    "end": {
                      "line": 117,
                      "column": 27
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3211,
                              3212
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 31
                              },
                              "end": {
                                "line": 117,
                                "column": 32
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              3213,
                              3214
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 33
                              },
                              "end": {
                                "line": 117,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            3211,
                            3214
                          ],
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 31
                            },
                            "end": {
                              "line": 117,
                              "column": 34
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "*",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3217,
                                3218
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 37
                                },
                                "end": {
                                  "line": 117,
                                  "column": 38
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                3219,
                                3220
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 39
                                },
                                "end": {
                                  "line": 117,
                                  "column": 40
                                }
                              }
                            },
                            "range": [
                              3217,
                              3220
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 37
                              },
                              "end": {
                                "line": 117,
                                "column": 40
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                3223,
                                3224
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 43
                                },
                                "end": {
                                  "line": 117,
                                  "column": 44
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                3225,
                                3226
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 45
                                },
                                "end": {
                                  "line": 117,
                                  "column": 46
                                }
                              }
                            },
                            "range": [
                              3223,
                              3226
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 43
                              },
                              "end": {
                                "line": 117,
                                "column": 46
                              }
                            }
                          },
                          "range": [
                            3217,
                            3226
                          ],
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 37
                            },
                            "end": {
                              "line": 117,
                              "column": 46
                            }
                          }
                        },
                        "range": [
                          3211,
                          3226
                        ],
                        "loc": {
                          "start": {
                            "line": 117,
                            "column": 31
                          },
                          "end": {
                            "line": 117,
                            "column": 46
                          }
                        }
                      },
                      "range": [
                        3211,
                        3227
                      ],
                      "loc": {
                        "start": {
                          "line": 117,
                          "column": 31
                        },
                        "end": {
                          "line": 117,
                          "column": 47
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3228,
                              3229
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 48
                              },
                              "end": {
                                "line": 117,
                                "column": 49
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              3230,
                              3231
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 50
                              },
                              "end": {
                                "line": 117,
                                "column": 51
                              }
                            }
                          },
                          "range": [
                            3228,
                            3231
                          ],
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 48
                            },
                            "end": {
                              "line": 117,
                              "column": 51
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "*",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3234,
                                3235
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 54
                                },
                                "end": {
                                  "line": 117,
                                  "column": 55
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                3236,
                                3237
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 56
                                },
                                "end": {
                                  "line": 117,
                                  "column": 57
                                }
                              }
                            },
                            "range": [
                              3234,
                              3237
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 54
                              },
                              "end": {
                                "line": 117,
                                "column": 57
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                3240,
                                3241
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 60
                                },
                                "end": {
                                  "line": 117,
                                  "column": 61
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                3242,
                                3243
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 62
                                },
                                "end": {
                                  "line": 117,
                                  "column": 63
                                }
                              }
                            },
                            "range": [
                              3240,
                              3243
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 60
                              },
                              "end": {
                                "line": 117,
                                "column": 63
                              }
                            }
                          },
                          "range": [
                            3234,
                            3243
                          ],
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 54
                            },
                            "end": {
                              "line": 117,
                              "column": 63
                            }
                          }
                        },
                        "range": [
                          3228,
                          3243
                        ],
                        "loc": {
                          "start": {
                            "line": 117,
                            "column": 48
                          },
                          "end": {
                            "line": 117,
                            "column": 63
                          }
                        }
                      },
                      "range": [
                        3228,
                        3244
                      ],
                      "loc": {
                        "start": {
                          "line": 117,
                          "column": 48
                        },
                        "end": {
                          "line": 117,
                          "column": 64
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3245,
                              3246
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 65
                              },
                              "end": {
                                "line": 117,
                                "column": 66
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              3247,
                              3248
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 67
                              },
                              "end": {
                                "line": 117,
                                "column": 68
                              }
                            }
                          },
                          "range": [
                            3245,
                            3248
                          ],
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 65
                            },
                            "end": {
                              "line": 117,
                              "column": 68
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "*",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3251,
                                3252
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 71
                                },
                                "end": {
                                  "line": 117,
                                  "column": 72
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                3253,
                                3254
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 73
                                },
                                "end": {
                                  "line": 117,
                                  "column": 74
                                }
                              }
                            },
                            "range": [
                              3251,
                              3254
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 71
                              },
                              "end": {
                                "line": 117,
                                "column": 74
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                3257,
                                3258
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 77
                                },
                                "end": {
                                  "line": 117,
                                  "column": 78
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                3259,
                                3260
                              ],
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 79
                                },
                                "end": {
                                  "line": 117,
                                  "column": 80
                                }
                              }
                            },
                            "range": [
                              3257,
                              3260
                            ],
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 77
                              },
                              "end": {
                                "line": 117,
                                "column": 80
                              }
                            }
                          },
                          "range": [
                            3251,
                            3260
                          ],
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 71
                            },
                            "end": {
                              "line": 117,
                              "column": 80
                            }
                          }
                        },
                        "range": [
                          3245,
                          3260
                        ],
                        "loc": {
                          "start": {
                            "line": 117,
                            "column": 65
                          },
                          "end": {
                            "line": 117,
                            "column": 80
                          }
                        }
                      },
                      "range": [
                        3245,
                        3261
                      ],
                      "loc": {
                        "start": {
                          "line": 117,
                          "column": 65
                        },
                        "end": {
                          "line": 117,
                          "column": 81
                        }
                      }
                    }
                  ],
                  "range": [
                    3209,
                    3263
                  ],
                  "loc": {
                    "start": {
                      "line": 117,
                      "column": 29
                    },
                    "end": {
                      "line": 117,
                      "column": 83
                    }
                  }
                },
                "alternate": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3275,
                              3276
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 11
                              },
                              "end": {
                                "line": 118,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              3277,
                              3278
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 13
                              },
                              "end": {
                                "line": 118,
                                "column": 14
                              }
                            }
                          },
                          "range": [
                            3275,
                            3278
                          ],
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 11
                            },
                            "end": {
                              "line": 118,
                              "column": 14
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "*",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3281,
                                3282
                              ],
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 17
                                },
                                "end": {
                                  "line": 118,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                3283,
                                3284
                              ],
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 19
                                },
                                "end": {
                                  "line": 118,
                                  "column": 20
                                }
                              }
                            },
                            "range": [
                              3281,
                              3284
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 17
                              },
                              "end": {
                                "line": 118,
                                "column": 20
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              3287,
                              3288
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 23
                              },
                              "end": {
                                "line": 118,
                                "column": 24
                              }
                            }
                          },
                          "range": [
                            3281,
                            3288
                          ],
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 17
                            },
                            "end": {
                              "line": 118,
                              "column": 24
                            }
                          }
                        },
                        "range": [
                          3275,
                          3288
                        ],
                        "loc": {
                          "start": {
                            "line": 118,
                            "column": 11
                          },
                          "end": {
                            "line": 118,
                            "column": 24
                          }
                        }
                      },
                      "range": [
                        3275,
                        3289
                      ],
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 11
                        },
                        "end": {
                          "line": 118,
                          "column": 25
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3290,
                              3291
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 26
                              },
                              "end": {
                                "line": 118,
                                "column": 27
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              3292,
                              3293
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 28
                              },
                              "end": {
                                "line": 118,
                                "column": 29
                              }
                            }
                          },
                          "range": [
                            3290,
                            3293
                          ],
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 26
                            },
                            "end": {
                              "line": 118,
                              "column": 29
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "*",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3296,
                                3297
                              ],
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 32
                                },
                                "end": {
                                  "line": 118,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                3298,
                                3299
                              ],
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 34
                                },
                                "end": {
                                  "line": 118,
                                  "column": 35
                                }
                              }
                            },
                            "range": [
                              3296,
                              3299
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 32
                              },
                              "end": {
                                "line": 118,
                                "column": 35
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              3302,
                              3303
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 38
                              },
                              "end": {
                                "line": 118,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            3296,
                            3303
                          ],
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 32
                            },
                            "end": {
                              "line": 118,
                              "column": 39
                            }
                          }
                        },
                        "range": [
                          3290,
                          3303
                        ],
                        "loc": {
                          "start": {
                            "line": 118,
                            "column": 26
                          },
                          "end": {
                            "line": 118,
                            "column": 39
                          }
                        }
                      },
                      "range": [
                        3290,
                        3304
                      ],
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 26
                        },
                        "end": {
                          "line": 118,
                          "column": 40
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3305,
                              3306
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 41
                              },
                              "end": {
                                "line": 118,
                                "column": 42
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              3307,
                              3308
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 43
                              },
                              "end": {
                                "line": 118,
                                "column": 44
                              }
                            }
                          },
                          "range": [
                            3305,
                            3308
                          ],
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 41
                            },
                            "end": {
                              "line": 118,
                              "column": 44
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "*",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3311,
                                3312
                              ],
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 47
                                },
                                "end": {
                                  "line": 118,
                                  "column": 48
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                3313,
                                3314
                              ],
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 49
                                },
                                "end": {
                                  "line": 118,
                                  "column": 50
                                }
                              }
                            },
                            "range": [
                              3311,
                              3314
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 47
                              },
                              "end": {
                                "line": 118,
                                "column": 50
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              3317,
                              3318
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 53
                              },
                              "end": {
                                "line": 118,
                                "column": 54
                              }
                            }
                          },
                          "range": [
                            3311,
                            3318
                          ],
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 47
                            },
                            "end": {
                              "line": 118,
                              "column": 54
                            }
                          }
                        },
                        "range": [
                          3305,
                          3318
                        ],
                        "loc": {
                          "start": {
                            "line": 118,
                            "column": 41
                          },
                          "end": {
                            "line": 118,
                            "column": 54
                          }
                        }
                      },
                      "range": [
                        3305,
                        3319
                      ],
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 41
                        },
                        "end": {
                          "line": 118,
                          "column": 55
                        }
                      }
                    }
                  ],
                  "range": [
                    3273,
                    3321
                  ],
                  "loc": {
                    "start": {
                      "line": 118,
                      "column": 9
                    },
                    "end": {
                      "line": 118,
                      "column": 57
                    }
                  }
                },
                "range": [
                  3184,
                  3321
                ],
                "loc": {
                  "start": {
                    "line": 117,
                    "column": 4
                  },
                  "end": {
                    "line": 118,
                    "column": 57
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "Identifier",
                  "name": "c",
                  "range": [
                    3333,
                    3334
                  ],
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 11
                    },
                    "end": {
                      "line": 119,
                      "column": 12
                    }
                  }
                },
                "range": [
                  3326,
                  3335
                ],
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 4
                  },
                  "end": {
                    "line": 119,
                    "column": 13
                  }
                }
              }
            ],
            "range": [
              3178,
              3337
            ],
            "loc": {
              "start": {
                "line": 116,
                "column": 36
              },
              "end": {
                "line": 120,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            3160,
            3337
          ],
          "loc": {
            "start": {
              "line": 116,
              "column": 18
            },
            "end": {
              "line": 120,
              "column": 1
            }
          }
        },
        "range": [
          3142,
          3337
        ],
        "loc": {
          "start": {
            "line": 116,
            "column": 0
          },
          "end": {
            "line": 120,
            "column": 1
          }
        }
      },
      "range": [
        3142,
        3338
      ],
      "loc": {
        "start": {
          "line": 116,
          "column": 0
        },
        "end": {
          "line": 120,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              3339,
              3345
            ],
            "loc": {
              "start": {
                "line": 121,
                "column": 0
              },
              "end": {
                "line": 121,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "divide",
            "range": [
              3346,
              3352
            ],
            "loc": {
              "start": {
                "line": 121,
                "column": 7
              },
              "end": {
                "line": 121,
                "column": 13
              }
            }
          },
          "range": [
            3339,
            3352
          ],
          "loc": {
            "start": {
              "line": 121,
              "column": 0
            },
            "end": {
              "line": 121,
              "column": 13
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "divide",
            "range": [
              3346,
              3352
            ],
            "loc": {
              "start": {
                "line": 121,
                "column": 7
              },
              "end": {
                "line": 121,
                "column": 13
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                3364,
                3365
              ],
              "loc": {
                "start": {
                  "line": 121,
                  "column": 25
                },
                "end": {
                  "line": 121,
                  "column": 26
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                3367,
                3368
              ],
              "loc": {
                "start": {
                  "line": 121,
                  "column": 28
                },
                "end": {
                  "line": 121,
                  "column": 29
                }
              }
            },
            {
              "type": "Identifier",
              "name": "c",
              "range": [
                3370,
                3371
              ],
              "loc": {
                "start": {
                  "line": 121,
                  "column": 31
                },
                "end": {
                  "line": 121,
                  "column": 32
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "IfStatement",
                "test": {
                  "type": "BinaryExpression",
                  "operator": "instanceof",
                  "left": {
                    "type": "Identifier",
                    "name": "b",
                    "range": [
                      3383,
                      3384
                    ],
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 8
                      },
                      "end": {
                        "line": 122,
                        "column": 9
                      }
                    }
                  },
                  "right": {
                    "type": "Identifier",
                    "name": "Vector",
                    "range": [
                      3396,
                      3402
                    ],
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 21
                      },
                      "end": {
                        "line": 122,
                        "column": 27
                      }
                    }
                  },
                  "range": [
                    3383,
                    3402
                  ],
                  "loc": {
                    "start": {
                      "line": 122,
                      "column": 8
                    },
                    "end": {
                      "line": 122,
                      "column": 27
                    }
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3406,
                              3407
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 31
                              },
                              "end": {
                                "line": 122,
                                "column": 32
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              3408,
                              3409
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 33
                              },
                              "end": {
                                "line": 122,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            3406,
                            3409
                          ],
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 31
                            },
                            "end": {
                              "line": 122,
                              "column": 34
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "/",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3412,
                                3413
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 37
                                },
                                "end": {
                                  "line": 122,
                                  "column": 38
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                3414,
                                3415
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 39
                                },
                                "end": {
                                  "line": 122,
                                  "column": 40
                                }
                              }
                            },
                            "range": [
                              3412,
                              3415
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 37
                              },
                              "end": {
                                "line": 122,
                                "column": 40
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                3418,
                                3419
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 43
                                },
                                "end": {
                                  "line": 122,
                                  "column": 44
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                3420,
                                3421
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 45
                                },
                                "end": {
                                  "line": 122,
                                  "column": 46
                                }
                              }
                            },
                            "range": [
                              3418,
                              3421
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 43
                              },
                              "end": {
                                "line": 122,
                                "column": 46
                              }
                            }
                          },
                          "range": [
                            3412,
                            3421
                          ],
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 37
                            },
                            "end": {
                              "line": 122,
                              "column": 46
                            }
                          }
                        },
                        "range": [
                          3406,
                          3421
                        ],
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 31
                          },
                          "end": {
                            "line": 122,
                            "column": 46
                          }
                        }
                      },
                      "range": [
                        3406,
                        3422
                      ],
                      "loc": {
                        "start": {
                          "line": 122,
                          "column": 31
                        },
                        "end": {
                          "line": 122,
                          "column": 47
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3423,
                              3424
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 48
                              },
                              "end": {
                                "line": 122,
                                "column": 49
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              3425,
                              3426
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 50
                              },
                              "end": {
                                "line": 122,
                                "column": 51
                              }
                            }
                          },
                          "range": [
                            3423,
                            3426
                          ],
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 48
                            },
                            "end": {
                              "line": 122,
                              "column": 51
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "/",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3429,
                                3430
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 54
                                },
                                "end": {
                                  "line": 122,
                                  "column": 55
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                3431,
                                3432
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 56
                                },
                                "end": {
                                  "line": 122,
                                  "column": 57
                                }
                              }
                            },
                            "range": [
                              3429,
                              3432
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 54
                              },
                              "end": {
                                "line": 122,
                                "column": 57
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                3435,
                                3436
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 60
                                },
                                "end": {
                                  "line": 122,
                                  "column": 61
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                3437,
                                3438
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 62
                                },
                                "end": {
                                  "line": 122,
                                  "column": 63
                                }
                              }
                            },
                            "range": [
                              3435,
                              3438
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 60
                              },
                              "end": {
                                "line": 122,
                                "column": 63
                              }
                            }
                          },
                          "range": [
                            3429,
                            3438
                          ],
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 54
                            },
                            "end": {
                              "line": 122,
                              "column": 63
                            }
                          }
                        },
                        "range": [
                          3423,
                          3438
                        ],
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 48
                          },
                          "end": {
                            "line": 122,
                            "column": 63
                          }
                        }
                      },
                      "range": [
                        3423,
                        3439
                      ],
                      "loc": {
                        "start": {
                          "line": 122,
                          "column": 48
                        },
                        "end": {
                          "line": 122,
                          "column": 64
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3440,
                              3441
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 65
                              },
                              "end": {
                                "line": 122,
                                "column": 66
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              3442,
                              3443
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 67
                              },
                              "end": {
                                "line": 122,
                                "column": 68
                              }
                            }
                          },
                          "range": [
                            3440,
                            3443
                          ],
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 65
                            },
                            "end": {
                              "line": 122,
                              "column": 68
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "/",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3446,
                                3447
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 71
                                },
                                "end": {
                                  "line": 122,
                                  "column": 72
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                3448,
                                3449
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 73
                                },
                                "end": {
                                  "line": 122,
                                  "column": 74
                                }
                              }
                            },
                            "range": [
                              3446,
                              3449
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 71
                              },
                              "end": {
                                "line": 122,
                                "column": 74
                              }
                            }
                          },
                          "right": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                3452,
                                3453
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 77
                                },
                                "end": {
                                  "line": 122,
                                  "column": 78
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                3454,
                                3455
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 79
                                },
                                "end": {
                                  "line": 122,
                                  "column": 80
                                }
                              }
                            },
                            "range": [
                              3452,
                              3455
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 77
                              },
                              "end": {
                                "line": 122,
                                "column": 80
                              }
                            }
                          },
                          "range": [
                            3446,
                            3455
                          ],
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 71
                            },
                            "end": {
                              "line": 122,
                              "column": 80
                            }
                          }
                        },
                        "range": [
                          3440,
                          3455
                        ],
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 65
                          },
                          "end": {
                            "line": 122,
                            "column": 80
                          }
                        }
                      },
                      "range": [
                        3440,
                        3456
                      ],
                      "loc": {
                        "start": {
                          "line": 122,
                          "column": 65
                        },
                        "end": {
                          "line": 122,
                          "column": 81
                        }
                      }
                    }
                  ],
                  "range": [
                    3404,
                    3458
                  ],
                  "loc": {
                    "start": {
                      "line": 122,
                      "column": 29
                    },
                    "end": {
                      "line": 122,
                      "column": 83
                    }
                  }
                },
                "alternate": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3470,
                              3471
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 11
                              },
                              "end": {
                                "line": 123,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              3472,
                              3473
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 13
                              },
                              "end": {
                                "line": 123,
                                "column": 14
                              }
                            }
                          },
                          "range": [
                            3470,
                            3473
                          ],
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 11
                            },
                            "end": {
                              "line": 123,
                              "column": 14
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "/",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3476,
                                3477
                              ],
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 17
                                },
                                "end": {
                                  "line": 123,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "x",
                              "range": [
                                3478,
                                3479
                              ],
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 19
                                },
                                "end": {
                                  "line": 123,
                                  "column": 20
                                }
                              }
                            },
                            "range": [
                              3476,
                              3479
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 17
                              },
                              "end": {
                                "line": 123,
                                "column": 20
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              3482,
                              3483
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 23
                              },
                              "end": {
                                "line": 123,
                                "column": 24
                              }
                            }
                          },
                          "range": [
                            3476,
                            3483
                          ],
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 17
                            },
                            "end": {
                              "line": 123,
                              "column": 24
                            }
                          }
                        },
                        "range": [
                          3470,
                          3483
                        ],
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 11
                          },
                          "end": {
                            "line": 123,
                            "column": 24
                          }
                        }
                      },
                      "range": [
                        3470,
                        3484
                      ],
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 11
                        },
                        "end": {
                          "line": 123,
                          "column": 25
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3485,
                              3486
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 26
                              },
                              "end": {
                                "line": 123,
                                "column": 27
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              3487,
                              3488
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 28
                              },
                              "end": {
                                "line": 123,
                                "column": 29
                              }
                            }
                          },
                          "range": [
                            3485,
                            3488
                          ],
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 26
                            },
                            "end": {
                              "line": 123,
                              "column": 29
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "/",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3491,
                                3492
                              ],
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 32
                                },
                                "end": {
                                  "line": 123,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "y",
                              "range": [
                                3493,
                                3494
                              ],
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 34
                                },
                                "end": {
                                  "line": 123,
                                  "column": 35
                                }
                              }
                            },
                            "range": [
                              3491,
                              3494
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 32
                              },
                              "end": {
                                "line": 123,
                                "column": 35
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              3497,
                              3498
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 38
                              },
                              "end": {
                                "line": 123,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            3491,
                            3498
                          ],
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 32
                            },
                            "end": {
                              "line": 123,
                              "column": 39
                            }
                          }
                        },
                        "range": [
                          3485,
                          3498
                        ],
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 26
                          },
                          "end": {
                            "line": 123,
                            "column": 39
                          }
                        }
                      },
                      "range": [
                        3485,
                        3499
                      ],
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 26
                        },
                        "end": {
                          "line": 123,
                          "column": 40
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "c",
                            "range": [
                              3500,
                              3501
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 41
                              },
                              "end": {
                                "line": 123,
                                "column": 42
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              3502,
                              3503
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 43
                              },
                              "end": {
                                "line": 123,
                                "column": 44
                              }
                            }
                          },
                          "range": [
                            3500,
                            3503
                          ],
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 41
                            },
                            "end": {
                              "line": 123,
                              "column": 44
                            }
                          }
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "operator": "/",
                          "left": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                3506,
                                3507
                              ],
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 47
                                },
                                "end": {
                                  "line": 123,
                                  "column": 48
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "z",
                              "range": [
                                3508,
                                3509
                              ],
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 49
                                },
                                "end": {
                                  "line": 123,
                                  "column": 50
                                }
                              }
                            },
                            "range": [
                              3506,
                              3509
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 47
                              },
                              "end": {
                                "line": 123,
                                "column": 50
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              3512,
                              3513
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 53
                              },
                              "end": {
                                "line": 123,
                                "column": 54
                              }
                            }
                          },
                          "range": [
                            3506,
                            3513
                          ],
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 47
                            },
                            "end": {
                              "line": 123,
                              "column": 54
                            }
                          }
                        },
                        "range": [
                          3500,
                          3513
                        ],
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 41
                          },
                          "end": {
                            "line": 123,
                            "column": 54
                          }
                        }
                      },
                      "range": [
                        3500,
                        3514
                      ],
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 41
                        },
                        "end": {
                          "line": 123,
                          "column": 55
                        }
                      }
                    }
                  ],
                  "range": [
                    3468,
                    3516
                  ],
                  "loc": {
                    "start": {
                      "line": 123,
                      "column": 9
                    },
                    "end": {
                      "line": 123,
                      "column": 57
                    }
                  }
                },
                "range": [
                  3379,
                  3516
                ],
                "loc": {
                  "start": {
                    "line": 122,
                    "column": 4
                  },
                  "end": {
                    "line": 123,
                    "column": 57
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "Identifier",
                  "name": "c",
                  "range": [
                    3528,
                    3529
                  ],
                  "loc": {
                    "start": {
                      "line": 124,
                      "column": 11
                    },
                    "end": {
                      "line": 124,
                      "column": 12
                    }
                  }
                },
                "range": [
                  3521,
                  3530
                ],
                "loc": {
                  "start": {
                    "line": 124,
                    "column": 4
                  },
                  "end": {
                    "line": 124,
                    "column": 13
                  }
                }
              }
            ],
            "range": [
              3373,
              3532
            ],
            "loc": {
              "start": {
                "line": 121,
                "column": 34
              },
              "end": {
                "line": 125,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            3355,
            3532
          ],
          "loc": {
            "start": {
              "line": 121,
              "column": 16
            },
            "end": {
              "line": 125,
              "column": 1
            }
          }
        },
        "range": [
          3339,
          3532
        ],
        "loc": {
          "start": {
            "line": 121,
            "column": 0
          },
          "end": {
            "line": 125,
            "column": 1
          }
        }
      },
      "range": [
        3339,
        3533
      ],
      "loc": {
        "start": {
          "line": 121,
          "column": 0
        },
        "end": {
          "line": 125,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              3534,
              3540
            ],
            "loc": {
              "start": {
                "line": 126,
                "column": 0
              },
              "end": {
                "line": 126,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "cross",
            "range": [
              3541,
              3546
            ],
            "loc": {
              "start": {
                "line": 126,
                "column": 7
              },
              "end": {
                "line": 126,
                "column": 12
              }
            }
          },
          "range": [
            3534,
            3546
          ],
          "loc": {
            "start": {
              "line": 126,
              "column": 0
            },
            "end": {
              "line": 126,
              "column": 12
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "cross",
            "range": [
              3541,
              3546
            ],
            "loc": {
              "start": {
                "line": 126,
                "column": 7
              },
              "end": {
                "line": 126,
                "column": 12
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                3558,
                3559
              ],
              "loc": {
                "start": {
                  "line": 126,
                  "column": 24
                },
                "end": {
                  "line": 126,
                  "column": 25
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                3561,
                3562
              ],
              "loc": {
                "start": {
                  "line": 126,
                  "column": 27
                },
                "end": {
                  "line": 126,
                  "column": 28
                }
              }
            },
            {
              "type": "Identifier",
              "name": "c",
              "range": [
                3564,
                3565
              ],
              "loc": {
                "start": {
                  "line": 126,
                  "column": 30
                },
                "end": {
                  "line": 126,
                  "column": 31
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "ExpressionStatement",
                "expression": {
                  "type": "AssignmentExpression",
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "c",
                      "range": [
                        3573,
                        3574
                      ],
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 4
                        },
                        "end": {
                          "line": 127,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "x",
                      "range": [
                        3575,
                        3576
                      ],
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 6
                        },
                        "end": {
                          "line": 127,
                          "column": 7
                        }
                      }
                    },
                    "range": [
                      3573,
                      3576
                    ],
                    "loc": {
                      "start": {
                        "line": 127,
                        "column": 4
                      },
                      "end": {
                        "line": 127,
                        "column": 7
                      }
                    }
                  },
                  "right": {
                    "type": "BinaryExpression",
                    "operator": "-",
                    "left": {
                      "type": "BinaryExpression",
                      "operator": "*",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "a",
                          "range": [
                            3579,
                            3580
                          ],
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 10
                            },
                            "end": {
                              "line": 127,
                              "column": 11
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "y",
                          "range": [
                            3581,
                            3582
                          ],
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 12
                            },
                            "end": {
                              "line": 127,
                              "column": 13
                            }
                          }
                        },
                        "range": [
                          3579,
                          3582
                        ],
                        "loc": {
                          "start": {
                            "line": 127,
                            "column": 10
                          },
                          "end": {
                            "line": 127,
                            "column": 13
                          }
                        }
                      },
                      "right": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "b",
                          "range": [
                            3585,
                            3586
                          ],
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 16
                            },
                            "end": {
                              "line": 127,
                              "column": 17
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "z",
                          "range": [
                            3587,
                            3588
                          ],
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 18
                            },
                            "end": {
                              "line": 127,
                              "column": 19
                            }
                          }
                        },
                        "range": [
                          3585,
                          3588
                        ],
                        "loc": {
                          "start": {
                            "line": 127,
                            "column": 16
                          },
                          "end": {
                            "line": 127,
                            "column": 19
                          }
                        }
                      },
                      "range": [
                        3579,
                        3588
                      ],
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 10
                        },
                        "end": {
                          "line": 127,
                          "column": 19
                        }
                      }
                    },
                    "right": {
                      "type": "BinaryExpression",
                      "operator": "*",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "a",
                          "range": [
                            3591,
                            3592
                          ],
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 22
                            },
                            "end": {
                              "line": 127,
                              "column": 23
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "z",
                          "range": [
                            3593,
                            3594
                          ],
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 24
                            },
                            "end": {
                              "line": 127,
                              "column": 25
                            }
                          }
                        },
                        "range": [
                          3591,
                          3594
                        ],
                        "loc": {
                          "start": {
                            "line": 127,
                            "column": 22
                          },
                          "end": {
                            "line": 127,
                            "column": 25
                          }
                        }
                      },
                      "right": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "b",
                          "range": [
                            3597,
                            3598
                          ],
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 28
                            },
                            "end": {
                              "line": 127,
                              "column": 29
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "y",
                          "range": [
                            3599,
                            3600
                          ],
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 30
                            },
                            "end": {
                              "line": 127,
                              "column": 31
                            }
                          }
                        },
                        "range": [
                          3597,
                          3600
                        ],
                        "loc": {
                          "start": {
                            "line": 127,
                            "column": 28
                          },
                          "end": {
                            "line": 127,
                            "column": 31
                          }
                        }
                      },
                      "range": [
                        3591,
                        3600
                      ],
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 22
                        },
                        "end": {
                          "line": 127,
                          "column": 31
                        }
                      }
                    },
                    "range": [
                      3579,
                      3600
                    ],
                    "loc": {
                      "start": {
                        "line": 127,
                        "column": 10
                      },
                      "end": {
                        "line": 127,
                        "column": 31
                      }
                    }
                  },
                  "range": [
                    3573,
                    3600
                  ],
                  "loc": {
                    "start": {
                      "line": 127,
                      "column": 4
                    },
                    "end": {
                      "line": 127,
                      "column": 31
                    }
                  }
                },
                "range": [
                  3573,
                  3601
                ],
                "loc": {
                  "start": {
                    "line": 127,
                    "column": 4
                  },
                  "end": {
                    "line": 127,
                    "column": 32
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "expression": {
                  "type": "AssignmentExpression",
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "c",
                      "range": [
                        3606,
                        3607
                      ],
                      "loc": {
                        "start": {
                          "line": 128,
                          "column": 4
                        },
                        "end": {
                          "line": 128,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "y",
                      "range": [
                        3608,
                        3609
                      ],
                      "loc": {
                        "start": {
                          "line": 128,
                          "column": 6
                        },
                        "end": {
                          "line": 128,
                          "column": 7
                        }
                      }
                    },
                    "range": [
                      3606,
                      3609
                    ],
                    "loc": {
                      "start": {
                        "line": 128,
                        "column": 4
                      },
                      "end": {
                        "line": 128,
                        "column": 7
                      }
                    }
                  },
                  "right": {
                    "type": "BinaryExpression",
                    "operator": "-",
                    "left": {
                      "type": "BinaryExpression",
                      "operator": "*",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "a",
                          "range": [
                            3612,
                            3613
                          ],
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 10
                            },
                            "end": {
                              "line": 128,
                              "column": 11
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "z",
                          "range": [
                            3614,
                            3615
                          ],
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 12
                            },
                            "end": {
                              "line": 128,
                              "column": 13
                            }
                          }
                        },
                        "range": [
                          3612,
                          3615
                        ],
                        "loc": {
                          "start": {
                            "line": 128,
                            "column": 10
                          },
                          "end": {
                            "line": 128,
                            "column": 13
                          }
                        }
                      },
                      "right": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "b",
                          "range": [
                            3618,
                            3619
                          ],
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 16
                            },
                            "end": {
                              "line": 128,
                              "column": 17
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "x",
                          "range": [
                            3620,
                            3621
                          ],
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 18
                            },
                            "end": {
                              "line": 128,
                              "column": 19
                            }
                          }
                        },
                        "range": [
                          3618,
                          3621
                        ],
                        "loc": {
                          "start": {
                            "line": 128,
                            "column": 16
                          },
                          "end": {
                            "line": 128,
                            "column": 19
                          }
                        }
                      },
                      "range": [
                        3612,
                        3621
                      ],
                      "loc": {
                        "start": {
                          "line": 128,
                          "column": 10
                        },
                        "end": {
                          "line": 128,
                          "column": 19
                        }
                      }
                    },
                    "right": {
                      "type": "BinaryExpression",
                      "operator": "*",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "a",
                          "range": [
                            3624,
                            3625
                          ],
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 22
                            },
                            "end": {
                              "line": 128,
                              "column": 23
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "x",
                          "range": [
                            3626,
                            3627
                          ],
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 24
                            },
                            "end": {
                              "line": 128,
                              "column": 25
                            }
                          }
                        },
                        "range": [
                          3624,
                          3627
                        ],
                        "loc": {
                          "start": {
                            "line": 128,
                            "column": 22
                          },
                          "end": {
                            "line": 128,
                            "column": 25
                          }
                        }
                      },
                      "right": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "b",
                          "range": [
                            3630,
                            3631
                          ],
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 28
                            },
                            "end": {
                              "line": 128,
                              "column": 29
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "z",
                          "range": [
                            3632,
                            3633
                          ],
                          "loc": {
                            "start": {
                              "line": 128,
                              "column": 30
                            },
                            "end": {
                              "line": 128,
                              "column": 31
                            }
                          }
                        },
                        "range": [
                          3630,
                          3633
                        ],
                        "loc": {
                          "start": {
                            "line": 128,
                            "column": 28
                          },
                          "end": {
                            "line": 128,
                            "column": 31
                          }
                        }
                      },
                      "range": [
                        3624,
                        3633
                      ],
                      "loc": {
                        "start": {
                          "line": 128,
                          "column": 22
                        },
                        "end": {
                          "line": 128,
                          "column": 31
                        }
                      }
                    },
                    "range": [
                      3612,
                      3633
                    ],
                    "loc": {
                      "start": {
                        "line": 128,
                        "column": 10
                      },
                      "end": {
                        "line": 128,
                        "column": 31
                      }
                    }
                  },
                  "range": [
                    3606,
                    3633
                  ],
                  "loc": {
                    "start": {
                      "line": 128,
                      "column": 4
                    },
                    "end": {
                      "line": 128,
                      "column": 31
                    }
                  }
                },
                "range": [
                  3606,
                  3634
                ],
                "loc": {
                  "start": {
                    "line": 128,
                    "column": 4
                  },
                  "end": {
                    "line": 128,
                    "column": 32
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "expression": {
                  "type": "AssignmentExpression",
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "c",
                      "range": [
                        3639,
                        3640
                      ],
                      "loc": {
                        "start": {
                          "line": 129,
                          "column": 4
                        },
                        "end": {
                          "line": 129,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "z",
                      "range": [
                        3641,
                        3642
                      ],
                      "loc": {
                        "start": {
                          "line": 129,
                          "column": 6
                        },
                        "end": {
                          "line": 129,
                          "column": 7
                        }
                      }
                    },
                    "range": [
                      3639,
                      3642
                    ],
                    "loc": {
                      "start": {
                        "line": 129,
                        "column": 4
                      },
                      "end": {
                        "line": 129,
                        "column": 7
                      }
                    }
                  },
                  "right": {
                    "type": "BinaryExpression",
                    "operator": "-",
                    "left": {
                      "type": "BinaryExpression",
                      "operator": "*",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "a",
                          "range": [
                            3645,
                            3646
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 10
                            },
                            "end": {
                              "line": 129,
                              "column": 11
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "x",
                          "range": [
                            3647,
                            3648
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 12
                            },
                            "end": {
                              "line": 129,
                              "column": 13
                            }
                          }
                        },
                        "range": [
                          3645,
                          3648
                        ],
                        "loc": {
                          "start": {
                            "line": 129,
                            "column": 10
                          },
                          "end": {
                            "line": 129,
                            "column": 13
                          }
                        }
                      },
                      "right": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "b",
                          "range": [
                            3651,
                            3652
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 16
                            },
                            "end": {
                              "line": 129,
                              "column": 17
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "y",
                          "range": [
                            3653,
                            3654
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 18
                            },
                            "end": {
                              "line": 129,
                              "column": 19
                            }
                          }
                        },
                        "range": [
                          3651,
                          3654
                        ],
                        "loc": {
                          "start": {
                            "line": 129,
                            "column": 16
                          },
                          "end": {
                            "line": 129,
                            "column": 19
                          }
                        }
                      },
                      "range": [
                        3645,
                        3654
                      ],
                      "loc": {
                        "start": {
                          "line": 129,
                          "column": 10
                        },
                        "end": {
                          "line": 129,
                          "column": 19
                        }
                      }
                    },
                    "right": {
                      "type": "BinaryExpression",
                      "operator": "*",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "a",
                          "range": [
                            3657,
                            3658
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 22
                            },
                            "end": {
                              "line": 129,
                              "column": 23
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "y",
                          "range": [
                            3659,
                            3660
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 24
                            },
                            "end": {
                              "line": 129,
                              "column": 25
                            }
                          }
                        },
                        "range": [
                          3657,
                          3660
                        ],
                        "loc": {
                          "start": {
                            "line": 129,
                            "column": 22
                          },
                          "end": {
                            "line": 129,
                            "column": 25
                          }
                        }
                      },
                      "right": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "b",
                          "range": [
                            3663,
                            3664
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 28
                            },
                            "end": {
                              "line": 129,
                              "column": 29
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "x",
                          "range": [
                            3665,
                            3666
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 30
                            },
                            "end": {
                              "line": 129,
                              "column": 31
                            }
                          }
                        },
                        "range": [
                          3663,
                          3666
                        ],
                        "loc": {
                          "start": {
                            "line": 129,
                            "column": 28
                          },
                          "end": {
                            "line": 129,
                            "column": 31
                          }
                        }
                      },
                      "range": [
                        3657,
                        3666
                      ],
                      "loc": {
                        "start": {
                          "line": 129,
                          "column": 22
                        },
                        "end": {
                          "line": 129,
                          "column": 31
                        }
                      }
                    },
                    "range": [
                      3645,
                      3666
                    ],
                    "loc": {
                      "start": {
                        "line": 129,
                        "column": 10
                      },
                      "end": {
                        "line": 129,
                        "column": 31
                      }
                    }
                  },
                  "range": [
                    3639,
                    3666
                  ],
                  "loc": {
                    "start": {
                      "line": 129,
                      "column": 4
                    },
                    "end": {
                      "line": 129,
                      "column": 31
                    }
                  }
                },
                "range": [
                  3639,
                  3667
                ],
                "loc": {
                  "start": {
                    "line": 129,
                    "column": 4
                  },
                  "end": {
                    "line": 129,
                    "column": 32
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "Identifier",
                  "name": "c",
                  "range": [
                    3679,
                    3680
                  ],
                  "loc": {
                    "start": {
                      "line": 130,
                      "column": 11
                    },
                    "end": {
                      "line": 130,
                      "column": 12
                    }
                  }
                },
                "range": [
                  3672,
                  3681
                ],
                "loc": {
                  "start": {
                    "line": 130,
                    "column": 4
                  },
                  "end": {
                    "line": 130,
                    "column": 13
                  }
                }
              }
            ],
            "range": [
              3567,
              3683
            ],
            "loc": {
              "start": {
                "line": 126,
                "column": 33
              },
              "end": {
                "line": 131,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            3549,
            3683
          ],
          "loc": {
            "start": {
              "line": 126,
              "column": 15
            },
            "end": {
              "line": 131,
              "column": 1
            }
          }
        },
        "range": [
          3534,
          3683
        ],
        "loc": {
          "start": {
            "line": 126,
            "column": 0
          },
          "end": {
            "line": 131,
            "column": 1
          }
        }
      },
      "range": [
        3534,
        3684
      ],
      "loc": {
        "start": {
          "line": 126,
          "column": 0
        },
        "end": {
          "line": 131,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              3685,
              3691
            ],
            "loc": {
              "start": {
                "line": 132,
                "column": 0
              },
              "end": {
                "line": 132,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "unit",
            "range": [
              3692,
              3696
            ],
            "loc": {
              "start": {
                "line": 132,
                "column": 7
              },
              "end": {
                "line": 132,
                "column": 11
              }
            }
          },
          "range": [
            3685,
            3696
          ],
          "loc": {
            "start": {
              "line": 132,
              "column": 0
            },
            "end": {
              "line": 132,
              "column": 11
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "unit",
            "range": [
              3692,
              3696
            ],
            "loc": {
              "start": {
                "line": 132,
                "column": 7
              },
              "end": {
                "line": 132,
                "column": 11
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                3708,
                3709
              ],
              "loc": {
                "start": {
                  "line": 132,
                  "column": 23
                },
                "end": {
                  "line": 132,
                  "column": 24
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                3711,
                3712
              ],
              "loc": {
                "start": {
                  "line": 132,
                  "column": 26
                },
                "end": {
                  "line": 132,
                  "column": 27
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "VariableDeclaration",
                "declarations": [
                  {
                    "type": "VariableDeclarator",
                    "id": {
                      "type": "Identifier",
                      "name": "length",
                      "range": [
                        3724,
                        3730
                      ],
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 8
                        },
                        "end": {
                          "line": 133,
                          "column": 14
                        }
                      }
                    },
                    "init": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "a",
                          "range": [
                            3733,
                            3734
                          ],
                          "loc": {
                            "start": {
                              "line": 133,
                              "column": 17
                            },
                            "end": {
                              "line": 133,
                              "column": 18
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "length",
                          "range": [
                            3735,
                            3741
                          ],
                          "loc": {
                            "start": {
                              "line": 133,
                              "column": 19
                            },
                            "end": {
                              "line": 133,
                              "column": 25
                            }
                          }
                        },
                        "range": [
                          3733,
                          3741
                        ],
                        "loc": {
                          "start": {
                            "line": 133,
                            "column": 17
                          },
                          "end": {
                            "line": 133,
                            "column": 25
                          }
                        }
                      },
                      "arguments": [],
                      "range": [
                        3733,
                        3743
                      ],
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 17
                        },
                        "end": {
                          "line": 133,
                          "column": 27
                        }
                      }
                    },
                    "range": [
                      3724,
                      3743
                    ],
                    "loc": {
                      "start": {
                        "line": 133,
                        "column": 8
                      },
                      "end": {
                        "line": 133,
                        "column": 27
                      }
                    }
                  }
                ],
                "kind": "var",
                "range": [
                  3720,
                  3744
                ],
                "loc": {
                  "start": {
                    "line": 133,
                    "column": 4
                  },
                  "end": {
                    "line": 133,
                    "column": 28
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "expression": {
                  "type": "AssignmentExpression",
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "b",
                      "range": [
                        3749,
                        3750
                      ],
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 4
                        },
                        "end": {
                          "line": 134,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "x",
                      "range": [
                        3751,
                        3752
                      ],
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 6
                        },
                        "end": {
                          "line": 134,
                          "column": 7
                        }
                      }
                    },
                    "range": [
                      3749,
                      3752
                    ],
                    "loc": {
                      "start": {
                        "line": 134,
                        "column": 4
                      },
                      "end": {
                        "line": 134,
                        "column": 7
                      }
                    }
                  },
                  "right": {
                    "type": "BinaryExpression",
                    "operator": "/",
                    "left": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "Identifier",
                        "name": "a",
                        "range": [
                          3755,
                          3756
                        ],
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 10
                          },
                          "end": {
                            "line": 134,
                            "column": 11
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "x",
                        "range": [
                          3757,
                          3758
                        ],
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 12
                          },
                          "end": {
                            "line": 134,
                            "column": 13
                          }
                        }
                      },
                      "range": [
                        3755,
                        3758
                      ],
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 10
                        },
                        "end": {
                          "line": 134,
                          "column": 13
                        }
                      }
                    },
                    "right": {
                      "type": "Identifier",
                      "name": "length",
                      "range": [
                        3761,
                        3767
                      ],
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 16
                        },
                        "end": {
                          "line": 134,
                          "column": 22
                        }
                      }
                    },
                    "range": [
                      3755,
                      3767
                    ],
                    "loc": {
                      "start": {
                        "line": 134,
                        "column": 10
                      },
                      "end": {
                        "line": 134,
                        "column": 22
                      }
                    }
                  },
                  "range": [
                    3749,
                    3767
                  ],
                  "loc": {
                    "start": {
                      "line": 134,
                      "column": 4
                    },
                    "end": {
                      "line": 134,
                      "column": 22
                    }
                  }
                },
                "range": [
                  3749,
                  3768
                ],
                "loc": {
                  "start": {
                    "line": 134,
                    "column": 4
                  },
                  "end": {
                    "line": 134,
                    "column": 23
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "expression": {
                  "type": "AssignmentExpression",
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "b",
                      "range": [
                        3773,
                        3774
                      ],
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 4
                        },
                        "end": {
                          "line": 135,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "y",
                      "range": [
                        3775,
                        3776
                      ],
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 6
                        },
                        "end": {
                          "line": 135,
                          "column": 7
                        }
                      }
                    },
                    "range": [
                      3773,
                      3776
                    ],
                    "loc": {
                      "start": {
                        "line": 135,
                        "column": 4
                      },
                      "end": {
                        "line": 135,
                        "column": 7
                      }
                    }
                  },
                  "right": {
                    "type": "BinaryExpression",
                    "operator": "/",
                    "left": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "Identifier",
                        "name": "a",
                        "range": [
                          3779,
                          3780
                        ],
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 10
                          },
                          "end": {
                            "line": 135,
                            "column": 11
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "y",
                        "range": [
                          3781,
                          3782
                        ],
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 12
                          },
                          "end": {
                            "line": 135,
                            "column": 13
                          }
                        }
                      },
                      "range": [
                        3779,
                        3782
                      ],
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 10
                        },
                        "end": {
                          "line": 135,
                          "column": 13
                        }
                      }
                    },
                    "right": {
                      "type": "Identifier",
                      "name": "length",
                      "range": [
                        3785,
                        3791
                      ],
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 16
                        },
                        "end": {
                          "line": 135,
                          "column": 22
                        }
                      }
                    },
                    "range": [
                      3779,
                      3791
                    ],
                    "loc": {
                      "start": {
                        "line": 135,
                        "column": 10
                      },
                      "end": {
                        "line": 135,
                        "column": 22
                      }
                    }
                  },
                  "range": [
                    3773,
                    3791
                  ],
                  "loc": {
                    "start": {
                      "line": 135,
                      "column": 4
                    },
                    "end": {
                      "line": 135,
                      "column": 22
                    }
                  }
                },
                "range": [
                  3773,
                  3792
                ],
                "loc": {
                  "start": {
                    "line": 135,
                    "column": 4
                  },
                  "end": {
                    "line": 135,
                    "column": 23
                  }
                }
              },
              {
                "type": "ExpressionStatement",
                "expression": {
                  "type": "AssignmentExpression",
                  "operator": "=",
                  "left": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "b",
                      "range": [
                        3797,
                        3798
                      ],
                      "loc": {
                        "start": {
                          "line": 136,
                          "column": 4
                        },
                        "end": {
                          "line": 136,
                          "column": 5
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "z",
                      "range": [
                        3799,
                        3800
                      ],
                      "loc": {
                        "start": {
                          "line": 136,
                          "column": 6
                        },
                        "end": {
                          "line": 136,
                          "column": 7
                        }
                      }
                    },
                    "range": [
                      3797,
                      3800
                    ],
                    "loc": {
                      "start": {
                        "line": 136,
                        "column": 4
                      },
                      "end": {
                        "line": 136,
                        "column": 7
                      }
                    }
                  },
                  "right": {
                    "type": "BinaryExpression",
                    "operator": "/",
                    "left": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "Identifier",
                        "name": "a",
                        "range": [
                          3803,
                          3804
                        ],
                        "loc": {
                          "start": {
                            "line": 136,
                            "column": 10
                          },
                          "end": {
                            "line": 136,
                            "column": 11
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "z",
                        "range": [
                          3805,
                          3806
                        ],
                        "loc": {
                          "start": {
                            "line": 136,
                            "column": 12
                          },
                          "end": {
                            "line": 136,
                            "column": 13
                          }
                        }
                      },
                      "range": [
                        3803,
                        3806
                      ],
                      "loc": {
                        "start": {
                          "line": 136,
                          "column": 10
                        },
                        "end": {
                          "line": 136,
                          "column": 13
                        }
                      }
                    },
                    "right": {
                      "type": "Identifier",
                      "name": "length",
                      "range": [
                        3809,
                        3815
                      ],
                      "loc": {
                        "start": {
                          "line": 136,
                          "column": 16
                        },
                        "end": {
                          "line": 136,
                          "column": 22
                        }
                      }
                    },
                    "range": [
                      3803,
                      3815
                    ],
                    "loc": {
                      "start": {
                        "line": 136,
                        "column": 10
                      },
                      "end": {
                        "line": 136,
                        "column": 22
                      }
                    }
                  },
                  "range": [
                    3797,
                    3815
                  ],
                  "loc": {
                    "start": {
                      "line": 136,
                      "column": 4
                    },
                    "end": {
                      "line": 136,
                      "column": 22
                    }
                  }
                },
                "range": [
                  3797,
                  3816
                ],
                "loc": {
                  "start": {
                    "line": 136,
                    "column": 4
                  },
                  "end": {
                    "line": 136,
                    "column": 23
                  }
                }
              },
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "Identifier",
                  "name": "b",
                  "range": [
                    3828,
                    3829
                  ],
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 11
                    },
                    "end": {
                      "line": 137,
                      "column": 12
                    }
                  }
                },
                "range": [
                  3821,
                  3830
                ],
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 4
                  },
                  "end": {
                    "line": 137,
                    "column": 13
                  }
                }
              }
            ],
            "range": [
              3714,
              3832
            ],
            "loc": {
              "start": {
                "line": 132,
                "column": 29
              },
              "end": {
                "line": 138,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            3699,
            3832
          ],
          "loc": {
            "start": {
              "line": 132,
              "column": 14
            },
            "end": {
              "line": 138,
              "column": 1
            }
          }
        },
        "range": [
          3685,
          3832
        ],
        "loc": {
          "start": {
            "line": 132,
            "column": 0
          },
          "end": {
            "line": 138,
            "column": 1
          }
        }
      },
      "range": [
        3685,
        3833
      ],
      "loc": {
        "start": {
          "line": 132,
          "column": 0
        },
        "end": {
          "line": 138,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              3834,
              3840
            ],
            "loc": {
              "start": {
                "line": 139,
                "column": 0
              },
              "end": {
                "line": 139,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "fromAngles",
            "range": [
              3841,
              3851
            ],
            "loc": {
              "start": {
                "line": 139,
                "column": 7
              },
              "end": {
                "line": 139,
                "column": 17
              }
            }
          },
          "range": [
            3834,
            3851
          ],
          "loc": {
            "start": {
              "line": 139,
              "column": 0
            },
            "end": {
              "line": 139,
              "column": 17
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "fromAngles",
            "range": [
              3841,
              3851
            ],
            "loc": {
              "start": {
                "line": 139,
                "column": 7
              },
              "end": {
                "line": 139,
                "column": 17
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "theta",
              "range": [
                3863,
                3868
              ],
              "loc": {
                "start": {
                  "line": 139,
                  "column": 29
                },
                "end": {
                  "line": 139,
                  "column": 34
                }
              }
            },
            {
              "type": "Identifier",
              "name": "phi",
              "range": [
                3870,
                3873
              ],
              "loc": {
                "start": {
                  "line": 139,
                  "column": 36
                },
                "end": {
                  "line": 139,
                  "column": 39
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "NewExpression",
                  "callee": {
                    "type": "Identifier",
                    "name": "Vector",
                    "range": [
                      3892,
                      3898
                    ],
                    "loc": {
                      "start": {
                        "line": 140,
                        "column": 15
                      },
                      "end": {
                        "line": 140,
                        "column": 21
                      }
                    }
                  },
                  "arguments": [
                    {
                      "type": "BinaryExpression",
                      "operator": "*",
                      "left": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Math",
                            "range": [
                              3899,
                              3903
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 22
                              },
                              "end": {
                                "line": 140,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "cos",
                            "range": [
                              3904,
                              3907
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 27
                              },
                              "end": {
                                "line": 140,
                                "column": 30
                              }
                            }
                          },
                          "range": [
                            3899,
                            3907
                          ],
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 22
                            },
                            "end": {
                              "line": 140,
                              "column": 30
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "name": "theta",
                            "range": [
                              3908,
                              3913
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 31
                              },
                              "end": {
                                "line": 140,
                                "column": 36
                              }
                            }
                          }
                        ],
                        "range": [
                          3899,
                          3914
                        ],
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 22
                          },
                          "end": {
                            "line": 140,
                            "column": 37
                          }
                        }
                      },
                      "right": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Math",
                            "range": [
                              3917,
                              3921
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 40
                              },
                              "end": {
                                "line": 140,
                                "column": 44
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "cos",
                            "range": [
                              3922,
                              3925
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 45
                              },
                              "end": {
                                "line": 140,
                                "column": 48
                              }
                            }
                          },
                          "range": [
                            3917,
                            3925
                          ],
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 40
                            },
                            "end": {
                              "line": 140,
                              "column": 48
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "name": "phi",
                            "range": [
                              3926,
                              3929
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 49
                              },
                              "end": {
                                "line": 140,
                                "column": 52
                              }
                            }
                          }
                        ],
                        "range": [
                          3917,
                          3930
                        ],
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 40
                          },
                          "end": {
                            "line": 140,
                            "column": 53
                          }
                        }
                      },
                      "range": [
                        3899,
                        3930
                      ],
                      "loc": {
                        "start": {
                          "line": 140,
                          "column": 22
                        },
                        "end": {
                          "line": 140,
                          "column": 53
                        }
                      }
                    },
                    {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "Math",
                          "range": [
                            3932,
                            3936
                          ],
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 55
                            },
                            "end": {
                              "line": 140,
                              "column": 59
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "sin",
                          "range": [
                            3937,
                            3940
                          ],
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 60
                            },
                            "end": {
                              "line": 140,
                              "column": 63
                            }
                          }
                        },
                        "range": [
                          3932,
                          3940
                        ],
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 55
                          },
                          "end": {
                            "line": 140,
                            "column": 63
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "name": "phi",
                          "range": [
                            3941,
                            3944
                          ],
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 64
                            },
                            "end": {
                              "line": 140,
                              "column": 67
                            }
                          }
                        }
                      ],
                      "range": [
                        3932,
                        3945
                      ],
                      "loc": {
                        "start": {
                          "line": 140,
                          "column": 55
                        },
                        "end": {
                          "line": 140,
                          "column": 68
                        }
                      }
                    },
                    {
                      "type": "BinaryExpression",
                      "operator": "*",
                      "left": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Math",
                            "range": [
                              3947,
                              3951
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 70
                              },
                              "end": {
                                "line": 140,
                                "column": 74
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "sin",
                            "range": [
                              3952,
                              3955
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 75
                              },
                              "end": {
                                "line": 140,
                                "column": 78
                              }
                            }
                          },
                          "range": [
                            3947,
                            3955
                          ],
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 70
                            },
                            "end": {
                              "line": 140,
                              "column": 78
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "name": "theta",
                            "range": [
                              3956,
                              3961
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 79
                              },
                              "end": {
                                "line": 140,
                                "column": 84
                              }
                            }
                          }
                        ],
                        "range": [
                          3947,
                          3962
                        ],
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 70
                          },
                          "end": {
                            "line": 140,
                            "column": 85
                          }
                        }
                      },
                      "right": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Math",
                            "range": [
                              3965,
                              3969
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 88
                              },
                              "end": {
                                "line": 140,
                                "column": 92
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "cos",
                            "range": [
                              3970,
                              3973
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 93
                              },
                              "end": {
                                "line": 140,
                                "column": 96
                              }
                            }
                          },
                          "range": [
                            3965,
                            3973
                          ],
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 88
                            },
                            "end": {
                              "line": 140,
                              "column": 96
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "name": "phi",
                            "range": [
                              3974,
                              3977
                            ],
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 97
                              },
                              "end": {
                                "line": 140,
                                "column": 100
                              }
                            }
                          }
                        ],
                        "range": [
                          3965,
                          3978
                        ],
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 88
                          },
                          "end": {
                            "line": 140,
                            "column": 101
                          }
                        }
                      },
                      "range": [
                        3947,
                        3978
                      ],
                      "loc": {
                        "start": {
                          "line": 140,
                          "column": 70
                        },
                        "end": {
                          "line": 140,
                          "column": 101
                        }
                      }
                    }
                  ],
                  "range": [
                    3888,
                    3979
                  ],
                  "loc": {
                    "start": {
                      "line": 140,
                      "column": 11
                    },
                    "end": {
                      "line": 140,
                      "column": 102
                    }
                  }
                },
                "range": [
                  3881,
                  3980
                ],
                "loc": {
                  "start": {
                    "line": 140,
                    "column": 4
                  },
                  "end": {
                    "line": 140,
                    "column": 103
                  }
                }
              }
            ],
            "range": [
              3875,
              3982
            ],
            "loc": {
              "start": {
                "line": 139,
                "column": 41
              },
              "end": {
                "line": 141,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            3854,
            3982
          ],
          "loc": {
            "start": {
              "line": 139,
              "column": 20
            },
            "end": {
              "line": 141,
              "column": 1
            }
          }
        },
        "range": [
          3834,
          3982
        ],
        "loc": {
          "start": {
            "line": 139,
            "column": 0
          },
          "end": {
            "line": 141,
            "column": 1
          }
        }
      },
      "range": [
        3834,
        3983
      ],
      "loc": {
        "start": {
          "line": 139,
          "column": 0
        },
        "end": {
          "line": 141,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              3984,
              3990
            ],
            "loc": {
              "start": {
                "line": 142,
                "column": 0
              },
              "end": {
                "line": 142,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "randomDirection",
            "range": [
              3991,
              4006
            ],
            "loc": {
              "start": {
                "line": 142,
                "column": 7
              },
              "end": {
                "line": 142,
                "column": 22
              }
            }
          },
          "range": [
            3984,
            4006
          ],
          "loc": {
            "start": {
              "line": 142,
              "column": 0
            },
            "end": {
              "line": 142,
              "column": 22
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "randomDirection",
            "range": [
              3991,
              4006
            ],
            "loc": {
              "start": {
                "line": 142,
                "column": 7
              },
              "end": {
                "line": 142,
                "column": 22
              }
            }
          },
          "params": [],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "CallExpression",
                  "callee": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "Vector",
                      "range": [
                        4033,
                        4039
                      ],
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 11
                        },
                        "end": {
                          "line": 143,
                          "column": 17
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "fromAngles",
                      "range": [
                        4040,
                        4050
                      ],
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 18
                        },
                        "end": {
                          "line": 143,
                          "column": 28
                        }
                      }
                    },
                    "range": [
                      4033,
                      4050
                    ],
                    "loc": {
                      "start": {
                        "line": 143,
                        "column": 11
                      },
                      "end": {
                        "line": 143,
                        "column": 28
                      }
                    }
                  },
                  "arguments": [
                    {
                      "type": "BinaryExpression",
                      "operator": "*",
                      "left": {
                        "type": "BinaryExpression",
                        "operator": "*",
                        "left": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "Math",
                              "range": [
                                4051,
                                4055
                              ],
                              "loc": {
                                "start": {
                                  "line": 143,
                                  "column": 29
                                },
                                "end": {
                                  "line": 143,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "random",
                              "range": [
                                4056,
                                4062
                              ],
                              "loc": {
                                "start": {
                                  "line": 143,
                                  "column": 34
                                },
                                "end": {
                                  "line": 143,
                                  "column": 40
                                }
                              }
                            },
                            "range": [
                              4051,
                              4062
                            ],
                            "loc": {
                              "start": {
                                "line": 143,
                                "column": 29
                              },
                              "end": {
                                "line": 143,
                                "column": 40
                              }
                            }
                          },
                          "arguments": [],
                          "range": [
                            4051,
                            4064
                          ],
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 29
                            },
                            "end": {
                              "line": 143,
                              "column": 42
                            }
                          }
                        },
                        "right": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Math",
                            "range": [
                              4067,
                              4071
                            ],
                            "loc": {
                              "start": {
                                "line": 143,
                                "column": 45
                              },
                              "end": {
                                "line": 143,
                                "column": 49
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "PI",
                            "range": [
                              4072,
                              4074
                            ],
                            "loc": {
                              "start": {
                                "line": 143,
                                "column": 50
                              },
                              "end": {
                                "line": 143,
                                "column": 52
                              }
                            }
                          },
                          "range": [
                            4067,
                            4074
                          ],
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 45
                            },
                            "end": {
                              "line": 143,
                              "column": 52
                            }
                          }
                        },
                        "range": [
                          4051,
                          4074
                        ],
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 29
                          },
                          "end": {
                            "line": 143,
                            "column": 52
                          }
                        }
                      },
                      "right": {
                        "type": "Literal",
                        "value": 2,
                        "raw": "2",
                        "range": [
                          4077,
                          4078
                        ],
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 55
                          },
                          "end": {
                            "line": 143,
                            "column": 56
                          }
                        }
                      },
                      "range": [
                        4051,
                        4078
                      ],
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 29
                        },
                        "end": {
                          "line": 143,
                          "column": 56
                        }
                      }
                    },
                    {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "Math",
                          "range": [
                            4080,
                            4084
                          ],
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 58
                            },
                            "end": {
                              "line": 143,
                              "column": 62
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "asin",
                          "range": [
                            4085,
                            4089
                          ],
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 63
                            },
                            "end": {
                              "line": 143,
                              "column": 67
                            }
                          }
                        },
                        "range": [
                          4080,
                          4089
                        ],
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 58
                          },
                          "end": {
                            "line": 143,
                            "column": 67
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "BinaryExpression",
                          "operator": "-",
                          "left": {
                            "type": "BinaryExpression",
                            "operator": "*",
                            "left": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "Math",
                                  "range": [
                                    4090,
                                    4094
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 143,
                                      "column": 68
                                    },
                                    "end": {
                                      "line": 143,
                                      "column": 72
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "random",
                                  "range": [
                                    4095,
                                    4101
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 143,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 143,
                                      "column": 79
                                    }
                                  }
                                },
                                "range": [
                                  4090,
                                  4101
                                ],
                                "loc": {
                                  "start": {
                                    "line": 143,
                                    "column": 68
                                  },
                                  "end": {
                                    "line": 143,
                                    "column": 79
                                  }
                                }
                              },
                              "arguments": [],
                              "range": [
                                4090,
                                4103
                              ],
                              "loc": {
                                "start": {
                                  "line": 143,
                                  "column": 68
                                },
                                "end": {
                                  "line": 143,
                                  "column": 81
                                }
                              }
                            },
                            "right": {
                              "type": "Literal",
                              "value": 2,
                              "raw": "2",
                              "range": [
                                4106,
                                4107
                              ],
                              "loc": {
                                "start": {
                                  "line": 143,
                                  "column": 84
                                },
                                "end": {
                                  "line": 143,
                                  "column": 85
                                }
                              }
                            },
                            "range": [
                              4090,
                              4107
                            ],
                            "loc": {
                              "start": {
                                "line": 143,
                                "column": 68
                              },
                              "end": {
                                "line": 143,
                                "column": 85
                              }
                            }
                          },
                          "right": {
                            "type": "Literal",
                            "value": 1,
                            "raw": "1",
                            "range": [
                              4110,
                              4111
                            ],
                            "loc": {
                              "start": {
                                "line": 143,
                                "column": 88
                              },
                              "end": {
                                "line": 143,
                                "column": 89
                              }
                            }
                          },
                          "range": [
                            4090,
                            4111
                          ],
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 68
                            },
                            "end": {
                              "line": 143,
                              "column": 89
                            }
                          }
                        }
                      ],
                      "range": [
                        4080,
                        4112
                      ],
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 58
                        },
                        "end": {
                          "line": 143,
                          "column": 90
                        }
                      }
                    }
                  ],
                  "range": [
                    4033,
                    4113
                  ],
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 11
                    },
                    "end": {
                      "line": 143,
                      "column": 91
                    }
                  }
                },
                "range": [
                  4026,
                  4114
                ],
                "loc": {
                  "start": {
                    "line": 143,
                    "column": 4
                  },
                  "end": {
                    "line": 143,
                    "column": 92
                  }
                }
              }
            ],
            "range": [
              4020,
              4116
            ],
            "loc": {
              "start": {
                "line": 142,
                "column": 36
              },
              "end": {
                "line": 144,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            4009,
            4116
          ],
          "loc": {
            "start": {
              "line": 142,
              "column": 25
            },
            "end": {
              "line": 144,
              "column": 1
            }
          }
        },
        "range": [
          3984,
          4116
        ],
        "loc": {
          "start": {
            "line": 142,
            "column": 0
          },
          "end": {
            "line": 144,
            "column": 1
          }
        }
      },
      "range": [
        3984,
        4117
      ],
      "loc": {
        "start": {
          "line": 142,
          "column": 0
        },
        "end": {
          "line": 144,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              4118,
              4124
            ],
            "loc": {
              "start": {
                "line": 145,
                "column": 0
              },
              "end": {
                "line": 145,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "min",
            "range": [
              4125,
              4128
            ],
            "loc": {
              "start": {
                "line": 145,
                "column": 7
              },
              "end": {
                "line": 145,
                "column": 10
              }
            }
          },
          "range": [
            4118,
            4128
          ],
          "loc": {
            "start": {
              "line": 145,
              "column": 0
            },
            "end": {
              "line": 145,
              "column": 10
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "min",
            "range": [
              4125,
              4128
            ],
            "loc": {
              "start": {
                "line": 145,
                "column": 7
              },
              "end": {
                "line": 145,
                "column": 10
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                4140,
                4141
              ],
              "loc": {
                "start": {
                  "line": 145,
                  "column": 22
                },
                "end": {
                  "line": 145,
                  "column": 23
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                4143,
                4144
              ],
              "loc": {
                "start": {
                  "line": 145,
                  "column": 25
                },
                "end": {
                  "line": 145,
                  "column": 26
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "NewExpression",
                  "callee": {
                    "type": "Identifier",
                    "name": "Vector",
                    "range": [
                      4163,
                      4169
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 15
                      },
                      "end": {
                        "line": 146,
                        "column": 21
                      }
                    }
                  },
                  "arguments": [
                    {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "Math",
                          "range": [
                            4170,
                            4174
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 22
                            },
                            "end": {
                              "line": 146,
                              "column": 26
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "min",
                          "range": [
                            4175,
                            4178
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 27
                            },
                            "end": {
                              "line": 146,
                              "column": 30
                            }
                          }
                        },
                        "range": [
                          4170,
                          4178
                        ],
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 22
                          },
                          "end": {
                            "line": 146,
                            "column": 30
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "a",
                            "range": [
                              4179,
                              4180
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 31
                              },
                              "end": {
                                "line": 146,
                                "column": 32
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              4181,
                              4182
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 33
                              },
                              "end": {
                                "line": 146,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            4179,
                            4182
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 31
                            },
                            "end": {
                              "line": 146,
                              "column": 34
                            }
                          }
                        },
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              4184,
                              4185
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 36
                              },
                              "end": {
                                "line": 146,
                                "column": 37
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              4186,
                              4187
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 38
                              },
                              "end": {
                                "line": 146,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            4184,
                            4187
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 36
                            },
                            "end": {
                              "line": 146,
                              "column": 39
                            }
                          }
                        }
                      ],
                      "range": [
                        4170,
                        4188
                      ],
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 22
                        },
                        "end": {
                          "line": 146,
                          "column": 40
                        }
                      }
                    },
                    {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "Math",
                          "range": [
                            4190,
                            4194
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 42
                            },
                            "end": {
                              "line": 146,
                              "column": 46
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "min",
                          "range": [
                            4195,
                            4198
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 47
                            },
                            "end": {
                              "line": 146,
                              "column": 50
                            }
                          }
                        },
                        "range": [
                          4190,
                          4198
                        ],
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 42
                          },
                          "end": {
                            "line": 146,
                            "column": 50
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "a",
                            "range": [
                              4199,
                              4200
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 51
                              },
                              "end": {
                                "line": 146,
                                "column": 52
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              4201,
                              4202
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 53
                              },
                              "end": {
                                "line": 146,
                                "column": 54
                              }
                            }
                          },
                          "range": [
                            4199,
                            4202
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 51
                            },
                            "end": {
                              "line": 146,
                              "column": 54
                            }
                          }
                        },
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              4204,
                              4205
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 56
                              },
                              "end": {
                                "line": 146,
                                "column": 57
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              4206,
                              4207
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 58
                              },
                              "end": {
                                "line": 146,
                                "column": 59
                              }
                            }
                          },
                          "range": [
                            4204,
                            4207
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 56
                            },
                            "end": {
                              "line": 146,
                              "column": 59
                            }
                          }
                        }
                      ],
                      "range": [
                        4190,
                        4208
                      ],
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 42
                        },
                        "end": {
                          "line": 146,
                          "column": 60
                        }
                      }
                    },
                    {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "Math",
                          "range": [
                            4210,
                            4214
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 62
                            },
                            "end": {
                              "line": 146,
                              "column": 66
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "min",
                          "range": [
                            4215,
                            4218
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 67
                            },
                            "end": {
                              "line": 146,
                              "column": 70
                            }
                          }
                        },
                        "range": [
                          4210,
                          4218
                        ],
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 62
                          },
                          "end": {
                            "line": 146,
                            "column": 70
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "a",
                            "range": [
                              4219,
                              4220
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 71
                              },
                              "end": {
                                "line": 146,
                                "column": 72
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              4221,
                              4222
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 73
                              },
                              "end": {
                                "line": 146,
                                "column": 74
                              }
                            }
                          },
                          "range": [
                            4219,
                            4222
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 71
                            },
                            "end": {
                              "line": 146,
                              "column": 74
                            }
                          }
                        },
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              4224,
                              4225
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 76
                              },
                              "end": {
                                "line": 146,
                                "column": 77
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              4226,
                              4227
                            ],
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 78
                              },
                              "end": {
                                "line": 146,
                                "column": 79
                              }
                            }
                          },
                          "range": [
                            4224,
                            4227
                          ],
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 76
                            },
                            "end": {
                              "line": 146,
                              "column": 79
                            }
                          }
                        }
                      ],
                      "range": [
                        4210,
                        4228
                      ],
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 62
                        },
                        "end": {
                          "line": 146,
                          "column": 80
                        }
                      }
                    }
                  ],
                  "range": [
                    4159,
                    4229
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 11
                    },
                    "end": {
                      "line": 146,
                      "column": 81
                    }
                  }
                },
                "range": [
                  4152,
                  4230
                ],
                "loc": {
                  "start": {
                    "line": 146,
                    "column": 4
                  },
                  "end": {
                    "line": 146,
                    "column": 82
                  }
                }
              }
            ],
            "range": [
              4146,
              4232
            ],
            "loc": {
              "start": {
                "line": 145,
                "column": 28
              },
              "end": {
                "line": 147,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            4131,
            4232
          ],
          "loc": {
            "start": {
              "line": 145,
              "column": 13
            },
            "end": {
              "line": 147,
              "column": 1
            }
          }
        },
        "range": [
          4118,
          4232
        ],
        "loc": {
          "start": {
            "line": 145,
            "column": 0
          },
          "end": {
            "line": 147,
            "column": 1
          }
        }
      },
      "range": [
        4118,
        4233
      ],
      "loc": {
        "start": {
          "line": 145,
          "column": 0
        },
        "end": {
          "line": 147,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              4234,
              4240
            ],
            "loc": {
              "start": {
                "line": 148,
                "column": 0
              },
              "end": {
                "line": 148,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "max",
            "range": [
              4241,
              4244
            ],
            "loc": {
              "start": {
                "line": 148,
                "column": 7
              },
              "end": {
                "line": 148,
                "column": 10
              }
            }
          },
          "range": [
            4234,
            4244
          ],
          "loc": {
            "start": {
              "line": 148,
              "column": 0
            },
            "end": {
              "line": 148,
              "column": 10
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "max",
            "range": [
              4241,
              4244
            ],
            "loc": {
              "start": {
                "line": 148,
                "column": 7
              },
              "end": {
                "line": 148,
                "column": 10
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                4256,
                4257
              ],
              "loc": {
                "start": {
                  "line": 148,
                  "column": 22
                },
                "end": {
                  "line": 148,
                  "column": 23
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                4259,
                4260
              ],
              "loc": {
                "start": {
                  "line": 148,
                  "column": 25
                },
                "end": {
                  "line": 148,
                  "column": 26
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "NewExpression",
                  "callee": {
                    "type": "Identifier",
                    "name": "Vector",
                    "range": [
                      4279,
                      4285
                    ],
                    "loc": {
                      "start": {
                        "line": 149,
                        "column": 15
                      },
                      "end": {
                        "line": 149,
                        "column": 21
                      }
                    }
                  },
                  "arguments": [
                    {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "Math",
                          "range": [
                            4286,
                            4290
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 22
                            },
                            "end": {
                              "line": 149,
                              "column": 26
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "max",
                          "range": [
                            4291,
                            4294
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 27
                            },
                            "end": {
                              "line": 149,
                              "column": 30
                            }
                          }
                        },
                        "range": [
                          4286,
                          4294
                        ],
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 22
                          },
                          "end": {
                            "line": 149,
                            "column": 30
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "a",
                            "range": [
                              4295,
                              4296
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 31
                              },
                              "end": {
                                "line": 149,
                                "column": 32
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              4297,
                              4298
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 33
                              },
                              "end": {
                                "line": 149,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            4295,
                            4298
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 31
                            },
                            "end": {
                              "line": 149,
                              "column": 34
                            }
                          }
                        },
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              4300,
                              4301
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 36
                              },
                              "end": {
                                "line": 149,
                                "column": 37
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "x",
                            "range": [
                              4302,
                              4303
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 38
                              },
                              "end": {
                                "line": 149,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            4300,
                            4303
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 36
                            },
                            "end": {
                              "line": 149,
                              "column": 39
                            }
                          }
                        }
                      ],
                      "range": [
                        4286,
                        4304
                      ],
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 22
                        },
                        "end": {
                          "line": 149,
                          "column": 40
                        }
                      }
                    },
                    {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "Math",
                          "range": [
                            4306,
                            4310
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 42
                            },
                            "end": {
                              "line": 149,
                              "column": 46
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "max",
                          "range": [
                            4311,
                            4314
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 47
                            },
                            "end": {
                              "line": 149,
                              "column": 50
                            }
                          }
                        },
                        "range": [
                          4306,
                          4314
                        ],
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 42
                          },
                          "end": {
                            "line": 149,
                            "column": 50
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "a",
                            "range": [
                              4315,
                              4316
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 51
                              },
                              "end": {
                                "line": 149,
                                "column": 52
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              4317,
                              4318
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 53
                              },
                              "end": {
                                "line": 149,
                                "column": 54
                              }
                            }
                          },
                          "range": [
                            4315,
                            4318
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 51
                            },
                            "end": {
                              "line": 149,
                              "column": 54
                            }
                          }
                        },
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              4320,
                              4321
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 56
                              },
                              "end": {
                                "line": 149,
                                "column": 57
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "y",
                            "range": [
                              4322,
                              4323
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 58
                              },
                              "end": {
                                "line": 149,
                                "column": 59
                              }
                            }
                          },
                          "range": [
                            4320,
                            4323
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 56
                            },
                            "end": {
                              "line": 149,
                              "column": 59
                            }
                          }
                        }
                      ],
                      "range": [
                        4306,
                        4324
                      ],
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 42
                        },
                        "end": {
                          "line": 149,
                          "column": 60
                        }
                      }
                    },
                    {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "Math",
                          "range": [
                            4326,
                            4330
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 62
                            },
                            "end": {
                              "line": 149,
                              "column": 66
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "max",
                          "range": [
                            4331,
                            4334
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 67
                            },
                            "end": {
                              "line": 149,
                              "column": 70
                            }
                          }
                        },
                        "range": [
                          4326,
                          4334
                        ],
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 62
                          },
                          "end": {
                            "line": 149,
                            "column": 70
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "a",
                            "range": [
                              4335,
                              4336
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 71
                              },
                              "end": {
                                "line": 149,
                                "column": 72
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              4337,
                              4338
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 73
                              },
                              "end": {
                                "line": 149,
                                "column": 74
                              }
                            }
                          },
                          "range": [
                            4335,
                            4338
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 71
                            },
                            "end": {
                              "line": 149,
                              "column": 74
                            }
                          }
                        },
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "b",
                            "range": [
                              4340,
                              4341
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 76
                              },
                              "end": {
                                "line": 149,
                                "column": 77
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "z",
                            "range": [
                              4342,
                              4343
                            ],
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 78
                              },
                              "end": {
                                "line": 149,
                                "column": 79
                              }
                            }
                          },
                          "range": [
                            4340,
                            4343
                          ],
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 76
                            },
                            "end": {
                              "line": 149,
                              "column": 79
                            }
                          }
                        }
                      ],
                      "range": [
                        4326,
                        4344
                      ],
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 62
                        },
                        "end": {
                          "line": 149,
                          "column": 80
                        }
                      }
                    }
                  ],
                  "range": [
                    4275,
                    4345
                  ],
                  "loc": {
                    "start": {
                      "line": 149,
                      "column": 11
                    },
                    "end": {
                      "line": 149,
                      "column": 81
                    }
                  }
                },
                "range": [
                  4268,
                  4346
                ],
                "loc": {
                  "start": {
                    "line": 149,
                    "column": 4
                  },
                  "end": {
                    "line": 149,
                    "column": 82
                  }
                }
              }
            ],
            "range": [
              4262,
              4348
            ],
            "loc": {
              "start": {
                "line": 148,
                "column": 28
              },
              "end": {
                "line": 150,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            4247,
            4348
          ],
          "loc": {
            "start": {
              "line": 148,
              "column": 13
            },
            "end": {
              "line": 150,
              "column": 1
            }
          }
        },
        "range": [
          4234,
          4348
        ],
        "loc": {
          "start": {
            "line": 148,
            "column": 0
          },
          "end": {
            "line": 150,
            "column": 1
          }
        }
      },
      "range": [
        4234,
        4349
      ],
      "loc": {
        "start": {
          "line": 148,
          "column": 0
        },
        "end": {
          "line": 150,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              4350,
              4356
            ],
            "loc": {
              "start": {
                "line": 151,
                "column": 0
              },
              "end": {
                "line": 151,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "lerp",
            "range": [
              4357,
              4361
            ],
            "loc": {
              "start": {
                "line": 151,
                "column": 7
              },
              "end": {
                "line": 151,
                "column": 11
              }
            }
          },
          "range": [
            4350,
            4361
          ],
          "loc": {
            "start": {
              "line": 151,
              "column": 0
            },
            "end": {
              "line": 151,
              "column": 11
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "lerp",
            "range": [
              4357,
              4361
            ],
            "loc": {
              "start": {
                "line": 151,
                "column": 7
              },
              "end": {
                "line": 151,
                "column": 11
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                4373,
                4374
              ],
              "loc": {
                "start": {
                  "line": 151,
                  "column": 23
                },
                "end": {
                  "line": 151,
                  "column": 24
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                4376,
                4377
              ],
              "loc": {
                "start": {
                  "line": 151,
                  "column": 26
                },
                "end": {
                  "line": 151,
                  "column": 27
                }
              }
            },
            {
              "type": "Identifier",
              "name": "fraction",
              "range": [
                4379,
                4387
              ],
              "loc": {
                "start": {
                  "line": 151,
                  "column": 29
                },
                "end": {
                  "line": 151,
                  "column": 37
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "CallExpression",
                  "callee": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "b",
                              "range": [
                                4402,
                                4403
                              ],
                              "loc": {
                                "start": {
                                  "line": 152,
                                  "column": 11
                                },
                                "end": {
                                  "line": 152,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "subtract",
                              "range": [
                                4404,
                                4412
                              ],
                              "loc": {
                                "start": {
                                  "line": 152,
                                  "column": 13
                                },
                                "end": {
                                  "line": 152,
                                  "column": 21
                                }
                              }
                            },
                            "range": [
                              4402,
                              4412
                            ],
                            "loc": {
                              "start": {
                                "line": 152,
                                "column": 11
                              },
                              "end": {
                                "line": 152,
                                "column": 21
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "name": "a",
                              "range": [
                                4413,
                                4414
                              ],
                              "loc": {
                                "start": {
                                  "line": 152,
                                  "column": 22
                                },
                                "end": {
                                  "line": 152,
                                  "column": 23
                                }
                              }
                            }
                          ],
                          "range": [
                            4402,
                            4415
                          ],
                          "loc": {
                            "start": {
                              "line": 152,
                              "column": 11
                            },
                            "end": {
                              "line": 152,
                              "column": 24
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "multiply",
                          "range": [
                            4416,
                            4424
                          ],
                          "loc": {
                            "start": {
                              "line": 152,
                              "column": 25
                            },
                            "end": {
                              "line": 152,
                              "column": 33
                            }
                          }
                        },
                        "range": [
                          4402,
                          4424
                        ],
                        "loc": {
                          "start": {
                            "line": 152,
                            "column": 11
                          },
                          "end": {
                            "line": 152,
                            "column": 33
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "name": "fraction",
                          "range": [
                            4425,
                            4433
                          ],
                          "loc": {
                            "start": {
                              "line": 152,
                              "column": 34
                            },
                            "end": {
                              "line": 152,
                              "column": 42
                            }
                          }
                        }
                      ],
                      "range": [
                        4402,
                        4434
                      ],
                      "loc": {
                        "start": {
                          "line": 152,
                          "column": 11
                        },
                        "end": {
                          "line": 152,
                          "column": 43
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "add",
                      "range": [
                        4435,
                        4438
                      ],
                      "loc": {
                        "start": {
                          "line": 152,
                          "column": 44
                        },
                        "end": {
                          "line": 152,
                          "column": 47
                        }
                      }
                    },
                    "range": [
                      4402,
                      4438
                    ],
                    "loc": {
                      "start": {
                        "line": 152,
                        "column": 11
                      },
                      "end": {
                        "line": 152,
                        "column": 47
                      }
                    }
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "name": "a",
                      "range": [
                        4439,
                        4440
                      ],
                      "loc": {
                        "start": {
                          "line": 152,
                          "column": 48
                        },
                        "end": {
                          "line": 152,
                          "column": 49
                        }
                      }
                    }
                  ],
                  "range": [
                    4402,
                    4441
                  ],
                  "loc": {
                    "start": {
                      "line": 152,
                      "column": 11
                    },
                    "end": {
                      "line": 152,
                      "column": 50
                    }
                  }
                },
                "range": [
                  4395,
                  4442
                ],
                "loc": {
                  "start": {
                    "line": 152,
                    "column": 4
                  },
                  "end": {
                    "line": 152,
                    "column": 51
                  }
                }
              }
            ],
            "range": [
              4389,
              4444
            ],
            "loc": {
              "start": {
                "line": 151,
                "column": 39
              },
              "end": {
                "line": 153,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            4364,
            4444
          ],
          "loc": {
            "start": {
              "line": 151,
              "column": 14
            },
            "end": {
              "line": 153,
              "column": 1
            }
          }
        },
        "range": [
          4350,
          4444
        ],
        "loc": {
          "start": {
            "line": 151,
            "column": 0
          },
          "end": {
            "line": 153,
            "column": 1
          }
        }
      },
      "range": [
        4350,
        4445
      ],
      "loc": {
        "start": {
          "line": 151,
          "column": 0
        },
        "end": {
          "line": 153,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              4446,
              4452
            ],
            "loc": {
              "start": {
                "line": 154,
                "column": 0
              },
              "end": {
                "line": 154,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "fromArray",
            "range": [
              4453,
              4462
            ],
            "loc": {
              "start": {
                "line": 154,
                "column": 7
              },
              "end": {
                "line": 154,
                "column": 16
              }
            }
          },
          "range": [
            4446,
            4462
          ],
          "loc": {
            "start": {
              "line": 154,
              "column": 0
            },
            "end": {
              "line": 154,
              "column": 16
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "fromArray",
            "range": [
              4453,
              4462
            ],
            "loc": {
              "start": {
                "line": 154,
                "column": 7
              },
              "end": {
                "line": 154,
                "column": 16
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                4474,
                4475
              ],
              "loc": {
                "start": {
                  "line": 154,
                  "column": 28
                },
                "end": {
                  "line": 154,
                  "column": 29
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "NewExpression",
                  "callee": {
                    "type": "Identifier",
                    "name": "Vector",
                    "range": [
                      4494,
                      4500
                    ],
                    "loc": {
                      "start": {
                        "line": 155,
                        "column": 15
                      },
                      "end": {
                        "line": 155,
                        "column": 21
                      }
                    }
                  },
                  "arguments": [
                    {
                      "type": "MemberExpression",
                      "computed": true,
                      "object": {
                        "type": "Identifier",
                        "name": "a",
                        "range": [
                          4501,
                          4502
                        ],
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 22
                          },
                          "end": {
                            "line": 155,
                            "column": 23
                          }
                        }
                      },
                      "property": {
                        "type": "Literal",
                        "value": 0,
                        "raw": "0",
                        "range": [
                          4503,
                          4504
                        ],
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 24
                          },
                          "end": {
                            "line": 155,
                            "column": 25
                          }
                        }
                      },
                      "range": [
                        4501,
                        4505
                      ],
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 22
                        },
                        "end": {
                          "line": 155,
                          "column": 26
                        }
                      }
                    },
                    {
                      "type": "MemberExpression",
                      "computed": true,
                      "object": {
                        "type": "Identifier",
                        "name": "a",
                        "range": [
                          4507,
                          4508
                        ],
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 28
                          },
                          "end": {
                            "line": 155,
                            "column": 29
                          }
                        }
                      },
                      "property": {
                        "type": "Literal",
                        "value": 1,
                        "raw": "1",
                        "range": [
                          4509,
                          4510
                        ],
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 30
                          },
                          "end": {
                            "line": 155,
                            "column": 31
                          }
                        }
                      },
                      "range": [
                        4507,
                        4511
                      ],
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 28
                        },
                        "end": {
                          "line": 155,
                          "column": 32
                        }
                      }
                    },
                    {
                      "type": "MemberExpression",
                      "computed": true,
                      "object": {
                        "type": "Identifier",
                        "name": "a",
                        "range": [
                          4513,
                          4514
                        ],
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 34
                          },
                          "end": {
                            "line": 155,
                            "column": 35
                          }
                        }
                      },
                      "property": {
                        "type": "Literal",
                        "value": 2,
                        "raw": "2",
                        "range": [
                          4515,
                          4516
                        ],
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 36
                          },
                          "end": {
                            "line": 155,
                            "column": 37
                          }
                        }
                      },
                      "range": [
                        4513,
                        4517
                      ],
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 34
                        },
                        "end": {
                          "line": 155,
                          "column": 38
                        }
                      }
                    }
                  ],
                  "range": [
                    4490,
                    4518
                  ],
                  "loc": {
                    "start": {
                      "line": 155,
                      "column": 11
                    },
                    "end": {
                      "line": 155,
                      "column": 39
                    }
                  }
                },
                "range": [
                  4483,
                  4519
                ],
                "loc": {
                  "start": {
                    "line": 155,
                    "column": 4
                  },
                  "end": {
                    "line": 155,
                    "column": 40
                  }
                }
              }
            ],
            "range": [
              4477,
              4521
            ],
            "loc": {
              "start": {
                "line": 154,
                "column": 31
              },
              "end": {
                "line": 156,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            4465,
            4521
          ],
          "loc": {
            "start": {
              "line": 154,
              "column": 19
            },
            "end": {
              "line": 156,
              "column": 1
            }
          }
        },
        "range": [
          4446,
          4521
        ],
        "loc": {
          "start": {
            "line": 154,
            "column": 0
          },
          "end": {
            "line": 156,
            "column": 1
          }
        }
      },
      "range": [
        4446,
        4522
      ],
      "loc": {
        "start": {
          "line": 154,
          "column": 0
        },
        "end": {
          "line": 156,
          "column": 2
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "expression": {
        "type": "AssignmentExpression",
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "computed": false,
          "object": {
            "type": "Identifier",
            "name": "Vector",
            "range": [
              4523,
              4529
            ],
            "loc": {
              "start": {
                "line": 157,
                "column": 0
              },
              "end": {
                "line": 157,
                "column": 6
              }
            }
          },
          "property": {
            "type": "Identifier",
            "name": "angleBetween",
            "range": [
              4530,
              4542
            ],
            "loc": {
              "start": {
                "line": 157,
                "column": 7
              },
              "end": {
                "line": 157,
                "column": 19
              }
            }
          },
          "range": [
            4523,
            4542
          ],
          "loc": {
            "start": {
              "line": 157,
              "column": 0
            },
            "end": {
              "line": 157,
              "column": 19
            }
          }
        },
        "right": {
          "type": "FunctionExpression",
          "id": {
            "type": "Identifier",
            "name": "angleBetween",
            "range": [
              4530,
              4542
            ],
            "loc": {
              "start": {
                "line": 157,
                "column": 7
              },
              "end": {
                "line": 157,
                "column": 19
              }
            }
          },
          "params": [
            {
              "type": "Identifier",
              "name": "a",
              "range": [
                4554,
                4555
              ],
              "loc": {
                "start": {
                  "line": 157,
                  "column": 31
                },
                "end": {
                  "line": 157,
                  "column": 32
                }
              }
            },
            {
              "type": "Identifier",
              "name": "b",
              "range": [
                4557,
                4558
              ],
              "loc": {
                "start": {
                  "line": 157,
                  "column": 34
                },
                "end": {
                  "line": 157,
                  "column": 35
                }
              }
            }
          ],
          "body": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "ReturnStatement",
                "argument": {
                  "type": "CallExpression",
                  "callee": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "a",
                      "range": [
                        4573,
                        4574
                      ],
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 11
                        },
                        "end": {
                          "line": 158,
                          "column": 12
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "angleTo",
                      "range": [
                        4575,
                        4582
                      ],
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 13
                        },
                        "end": {
                          "line": 158,
                          "column": 20
                        }
                      }
                    },
                    "range": [
                      4573,
                      4582
                    ],
                    "loc": {
                      "start": {
                        "line": 158,
                        "column": 11
                      },
                      "end": {
                        "line": 158,
                        "column": 20
                      }
                    }
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "name": "b",
                      "range": [
                        4583,
                        4584
                      ],
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 21
                        },
                        "end": {
                          "line": 158,
                          "column": 22
                        }
                      }
                    }
                  ],
                  "range": [
                    4573,
                    4585
                  ],
                  "loc": {
                    "start": {
                      "line": 158,
                      "column": 11
                    },
                    "end": {
                      "line": 158,
                      "column": 23
                    }
                  }
                },
                "range": [
                  4566,
                  4586
                ],
                "loc": {
                  "start": {
                    "line": 158,
                    "column": 4
                  },
                  "end": {
                    "line": 158,
                    "column": 24
                  }
                }
              }
            ],
            "range": [
              4560,
              4588
            ],
            "loc": {
              "start": {
                "line": 157,
                "column": 37
              },
              "end": {
                "line": 159,
                "column": 1
              }
            }
          },
          "generator": false,
          "expression": false,
          "range": [
            4545,
            4588
          ],
          "loc": {
            "start": {
              "line": 157,
              "column": 22
            },
            "end": {
              "line": 159,
              "column": 1
            }
          }
        },
        "range": [
          4523,
          4588
        ],
        "loc": {
          "start": {
            "line": 157,
            "column": 0
          },
          "end": {
            "line": 159,
            "column": 1
          }
        }
      },
      "range": [
        4523,
        4589
      ],
      "loc": {
        "start": {
          "line": 157,
          "column": 0
        },
        "end": {
          "line": 159,
          "column": 2
        }
      }
    },
    {
      "type": "Identifier",
      "declaration": {
        "type": "Identifier",
        "name": "Vector",
        "range": [
          4606,
          4612
        ],
        "loc": {
          "start": {
            "line": 161,
            "column": 15
          },
          "end": {
            "line": 161,
            "column": 21
          }
        }
      },
      "range": [
        4591,
        4613
      ],
      "loc": {
        "start": {
          "line": 161,
          "column": 0
        },
        "end": {
          "line": 161,
          "column": 22
        }
      },
      "name": "_",
      "leadingComments": [],
      "trailingComments": []
    },
    {
      "type": "ExportDefaultDeclaration",
      "declaration": {
        "type": "FunctionDeclaration",
        "id": {
          "type": "Identifier",
          "name": "Vector",
          "range": [
            143,
            149
          ],
          "loc": {
            "start": {
              "line": 13,
              "column": 9
            },
            "end": {
              "line": 13,
              "column": 15
            }
          }
        },
        "params": [
          {
            "type": "Identifier",
            "name": "x",
            "range": [
              150,
              151
            ],
            "loc": {
              "start": {
                "line": 13,
                "column": 16
              },
              "end": {
                "line": 13,
                "column": 17
              }
            }
          },
          {
            "type": "Identifier",
            "name": "y",
            "range": [
              153,
              154
            ],
            "loc": {
              "start": {
                "line": 13,
                "column": 19
              },
              "end": {
                "line": 13,
                "column": 20
              }
            }
          },
          {
            "type": "Identifier",
            "name": "z",
            "range": [
              156,
              157
            ],
            "loc": {
              "start": {
                "line": 13,
                "column": 22
              },
              "end": {
                "line": 13,
                "column": 23
              }
            }
          }
        ],
        "body": {
          "type": "BlockStatement",
          "body": [
            {
              "type": "ExpressionStatement",
              "expression": {
                "type": "AssignmentExpression",
                "operator": "=",
                "left": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "ThisExpression",
                    "range": [
                      165,
                      169
                    ],
                    "loc": {
                      "start": {
                        "line": 14,
                        "column": 4
                      },
                      "end": {
                        "line": 14,
                        "column": 8
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "x",
                    "range": [
                      170,
                      171
                    ],
                    "loc": {
                      "start": {
                        "line": 14,
                        "column": 9
                      },
                      "end": {
                        "line": 14,
                        "column": 10
                      }
                    }
                  },
                  "range": [
                    165,
                    171
                  ],
                  "loc": {
                    "start": {
                      "line": 14,
                      "column": 4
                    },
                    "end": {
                      "line": 14,
                      "column": 10
                    }
                  }
                },
                "right": {
                  "type": "LogicalExpression",
                  "operator": "||",
                  "left": {
                    "type": "Identifier",
                    "name": "x",
                    "range": [
                      174,
                      175
                    ],
                    "loc": {
                      "start": {
                        "line": 14,
                        "column": 13
                      },
                      "end": {
                        "line": 14,
                        "column": 14
                      }
                    }
                  },
                  "right": {
                    "type": "Literal",
                    "value": 0,
                    "raw": "0",
                    "range": [
                      179,
                      180
                    ],
                    "loc": {
                      "start": {
                        "line": 14,
                        "column": 18
                      },
                      "end": {
                        "line": 14,
                        "column": 19
                      }
                    }
                  },
                  "range": [
                    174,
                    180
                  ],
                  "loc": {
                    "start": {
                      "line": 14,
                      "column": 13
                    },
                    "end": {
                      "line": 14,
                      "column": 19
                    }
                  }
                },
                "range": [
                  165,
                  180
                ],
                "loc": {
                  "start": {
                    "line": 14,
                    "column": 4
                  },
                  "end": {
                    "line": 14,
                    "column": 19
                  }
                }
              },
              "range": [
                165,
                181
              ],
              "loc": {
                "start": {
                  "line": 14,
                  "column": 4
                },
                "end": {
                  "line": 14,
                  "column": 20
                }
              }
            },
            {
              "type": "ExpressionStatement",
              "expression": {
                "type": "AssignmentExpression",
                "operator": "=",
                "left": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "ThisExpression",
                    "range": [
                      186,
                      190
                    ],
                    "loc": {
                      "start": {
                        "line": 15,
                        "column": 4
                      },
                      "end": {
                        "line": 15,
                        "column": 8
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "y",
                    "range": [
                      191,
                      192
                    ],
                    "loc": {
                      "start": {
                        "line": 15,
                        "column": 9
                      },
                      "end": {
                        "line": 15,
                        "column": 10
                      }
                    }
                  },
                  "range": [
                    186,
                    192
                  ],
                  "loc": {
                    "start": {
                      "line": 15,
                      "column": 4
                    },
                    "end": {
                      "line": 15,
                      "column": 10
                    }
                  }
                },
                "right": {
                  "type": "LogicalExpression",
                  "operator": "||",
                  "left": {
                    "type": "Identifier",
                    "name": "y",
                    "range": [
                      195,
                      196
                    ],
                    "loc": {
                      "start": {
                        "line": 15,
                        "column": 13
                      },
                      "end": {
                        "line": 15,
                        "column": 14
                      }
                    }
                  },
                  "right": {
                    "type": "Literal",
                    "value": 0,
                    "raw": "0",
                    "range": [
                      200,
                      201
                    ],
                    "loc": {
                      "start": {
                        "line": 15,
                        "column": 18
                      },
                      "end": {
                        "line": 15,
                        "column": 19
                      }
                    }
                  },
                  "range": [
                    195,
                    201
                  ],
                  "loc": {
                    "start": {
                      "line": 15,
                      "column": 13
                    },
                    "end": {
                      "line": 15,
                      "column": 19
                    }
                  }
                },
                "range": [
                  186,
                  201
                ],
                "loc": {
                  "start": {
                    "line": 15,
                    "column": 4
                  },
                  "end": {
                    "line": 15,
                    "column": 19
                  }
                }
              },
              "range": [
                186,
                202
              ],
              "loc": {
                "start": {
                  "line": 15,
                  "column": 4
                },
                "end": {
                  "line": 15,
                  "column": 20
                }
              }
            },
            {
              "type": "ExpressionStatement",
              "expression": {
                "type": "AssignmentExpression",
                "operator": "=",
                "left": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "ThisExpression",
                    "range": [
                      207,
                      211
                    ],
                    "loc": {
                      "start": {
                        "line": 16,
                        "column": 4
                      },
                      "end": {
                        "line": 16,
                        "column": 8
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "z",
                    "range": [
                      212,
                      213
                    ],
                    "loc": {
                      "start": {
                        "line": 16,
                        "column": 9
                      },
                      "end": {
                        "line": 16,
                        "column": 10
                      }
                    }
                  },
                  "range": [
                    207,
                    213
                  ],
                  "loc": {
                    "start": {
                      "line": 16,
                      "column": 4
                    },
                    "end": {
                      "line": 16,
                      "column": 10
                    }
                  }
                },
                "right": {
                  "type": "LogicalExpression",
                  "operator": "||",
                  "left": {
                    "type": "Identifier",
                    "name": "z",
                    "range": [
                      216,
                      217
                    ],
                    "loc": {
                      "start": {
                        "line": 16,
                        "column": 13
                      },
                      "end": {
                        "line": 16,
                        "column": 14
                      }
                    }
                  },
                  "right": {
                    "type": "Literal",
                    "value": 0,
                    "raw": "0",
                    "range": [
                      221,
                      222
                    ],
                    "loc": {
                      "start": {
                        "line": 16,
                        "column": 18
                      },
                      "end": {
                        "line": 16,
                        "column": 19
                      }
                    }
                  },
                  "range": [
                    216,
                    222
                  ],
                  "loc": {
                    "start": {
                      "line": 16,
                      "column": 13
                    },
                    "end": {
                      "line": 16,
                      "column": 19
                    }
                  }
                },
                "range": [
                  207,
                  222
                ],
                "loc": {
                  "start": {
                    "line": 16,
                    "column": 4
                  },
                  "end": {
                    "line": 16,
                    "column": 19
                  }
                }
              },
              "range": [
                207,
                223
              ],
              "loc": {
                "start": {
                  "line": 16,
                  "column": 4
                },
                "end": {
                  "line": 16,
                  "column": 20
                }
              }
            }
          ],
          "range": [
            159,
            225
          ],
          "loc": {
            "start": {
              "line": 13,
              "column": 25
            },
            "end": {
              "line": 17,
              "column": 1
            }
          }
        },
        "generator": false,
        "expression": false,
        "range": [
          134,
          225
        ],
        "loc": {
          "start": {
            "line": 13,
            "column": 0
          },
          "end": {
            "line": 17,
            "column": 1
          }
        },
        "leadingComments": [
          {
            "type": "Block",
            "value": "*\n * ES5\n * https://evanw.github.io/lightgl.js/docs/vector.html\n ",
            "range": [
              0,
              69
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 0
              },
              "end": {
                "line": 4,
                "column": 3
              }
            }
          },
          {
            "type": "Block",
            "value": "*\n *\n * @param x\n * @param y\n * @param z\n * @constructor\n ",
            "range": [
              71,
              133
            ],
            "loc": {
              "start": {
                "line": 6,
                "column": 0
              },
              "end": {
                "line": 12,
                "column": 3
              }
            }
          }
        ],
        "trailingComments": []
      },
      "range": [
        4591,
        4613
      ],
      "loc": {
        "start": {
          "line": 161,
          "column": 0
        },
        "end": {
          "line": 161,
          "column": 22
        }
      }
    }
  ],
  "sourceType": "module",
  "range": [
    134,
    4613
  ],
  "loc": {
    "start": {
      "line": 13,
      "column": 0
    },
    "end": {
      "line": 161,
      "column": 22
    }
  },
  "comments": [
    {
      "type": "Block",
      "value": "*\n * ES5\n * https://evanw.github.io/lightgl.js/docs/vector.html\n ",
      "range": [
        0,
        69
      ],
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 3
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n *\n * @param x\n * @param y\n * @param z\n * @constructor\n ",
      "range": [
        71,
        133
      ],
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 12,
          "column": 3
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     *\n     * @returns {Vector}\n     ",
      "range": [
        252,
        295
      ],
      "loc": {
        "start": {
          "line": 20,
          "column": 4
        },
        "end": {
          "line": 23,
          "column": 7
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     *\n     * @param {Vector || number} v\n     * @returns {Vector}\n     ",
      "range": [
        388,
        466
      ],
      "loc": {
        "start": {
          "line": 27,
          "column": 4
        },
        "end": {
          "line": 31,
          "column": 7
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     *\n     * @returns {number}\n     ",
      "range": [
        1953,
        1996
      ],
      "loc": {
        "start": {
          "line": 73,
          "column": 4
        },
        "end": {
          "line": 76,
          "column": 7
        }
      }
    }
  ]
}